How to load all the classes in a JAR file at runtime?

Any clues o:
"How can I force JVM to load all the classes in a specified JAR at once?"
Thanx!
-Rajeev

Well I was thinking may be there exists an option with "java", when I
am starting an application from a jar file, I could force it to load all
the classes in the JAR. I don't want to do it programically. Is there such
an option available?? Or in other words can I ask JVM to not do the dynamic
loading for the JAR??
Thanx.
List all JarEntries and convert the paths to fully
qualified class files
e.g file in jar
[1] /com/mycompany/proj/X.class
should become
[2] com.mycompany.proj.X
then for each entry issue
Class.forName( [2] );

Similar Messages

  • How to access all the classes in a jar file

    hai
    i have a custom built JAR file which has many classes(Translets) in it . i want to access the classes inthe JAR file in a JSP page or an servlet. I have tried setting the classpaths etc , but nothing has happened.
    Where should the jar file be Palced - i am using Tomcat Server.
    How Can i Access the class files .. Very Urgent .. Please Help me ..
    Peter Iyer

    What is showing a file not found error? The web browser? if so, that's probably not a problem with the jar file.
    Also, have you expanded your jar file to make sure that you jarred it up correctly?

  • How to combine the classes from 2 jar files into 1?

    Hi there
    I have got 2 jar files with the same name but the classes that they contain are different. So, I want to combine those 2 files into 1. Could anyone please tell me how to add the classes in a jar file to another jar file?
    Thanks for your help!
    From
    Edmund

    The jar utility allows you to extract files as well as put them into a jar. This is in the java docs.
    You might have to hand modify the manifest file if it was hand modified in the first place. All you should have to do is copy the text from one file to another. The manifest will have the same name so you will have to extract to different dirs so it isn't overwritten.
    Steps:
    -Create dir1 and dir2
    -Extract jar1 into dir1, Extract jar2 into dir2.
    -Manually examine manifests and combine if needed.
    -Copy files from one dir to another.
    -Use jar tool to create new jar.

  • How do you know the version of a JAR file ?

    how do you know the version of a JAR file ?
    is it what is written on MANIFEST.MF ?
    for example i have a JAR file
    whose MANIFEST.MF has this
    Manifest-Version: 1.0
    Created-By: Ant 1.4.1so, whats the version of this JAR ? 1.0 ?

    anyway, that was JSTL..jar.
    Now, come to another JAR file....
    whose MANIFEST.MF has......
    Manifest-Version: 1.0
    Created-By: Apache Ant 1.5.1
    Extension-Name: Struts Framework
    Specification-Title: Struts Framework
    Specification-Vendor: Apache Software Foundation
    Specification-Version: 1.1
    Implementation-Title: Struts Framework
    Implementation-Vendor: Apache Software Foundation
    Implementation-Vendor-Id: org.apache
    Implementation-Version: 1.1
    Class-Path:  commons-beanutils.jar commons-collections.jar commons-dig
    ester.jar commons-logging.jar commons-validator.jar jakarta-oro.jar s
    truts-legacy.jarso, How do you believe whats the version now ? do u go with the comment "Manifest-Version: 1.0" or "Specification-Version: 1.1" ?
    definitely, you would go with the "Specification-Version: 1.1" and declare this JAR as STRUTS 1.1
    hmmm, so, if nothing is mentioned like above should we follow the MANIFEST version as the JSTL version ? in my earlier example i did not find any comment on ""Specification-Version" ......so , if anybody gives me that JAR , how do i decide whether its 1.0 specification or 1.1 specifucation compliant ?
    can you tell whats the JSTL version of my earler example JAR file ?

  • Adding all the classes and external jars in webservice WAR using servicegen

    Hi,
    Can someone please tell me how do I include all the classes and my external jar files to the ear/war file that is created using servicegen. I don't see any option in servicegen tag where I can include my classes and jar files to the ear/war file. The war it creates only contains the web service implementation class but I want to all the classes in the service code and jars in the same war. Any ideas on how to do that instead of putting in the classpath.
    here is the snippet of my build file
    <servicegen
           destEar="${deploy}/myservice.ear"
           warName="myservice.war">
           <service
             javaClassComponents="com.ws.service.TestService"
             targetNamespace="http://xmlns.test.com/tool/myservice"
             serviceName="myservice"
             serviceURI="/myservice"
             style="document"
             protocol="http"
             expandMethods="True">
           </service>
          <classpath>
            <pathelement path="${classes}"/>
            <pathelement path="${lib}/*.jar"/>
         <pathelement path="C:/bea/weblogic92/server/lib/webserviceclient.jar"/>
          </classpath>      
    </servicegen>
    ..........................Thanks

    Hi,
    The work around I am using to overcome this problem is Unzipping th ear/war file created by servicegen task and including all the classes. Then creating the ear file again by creating a new ant target.
    I know this is not a neater way, but this works for me.

  • How I load all the data in a database table into a cache?

    Hi
    Lets assume I have a lookup table I want to load it upfront into the cache so that the application can use this data from cache. One way is to write code to create a map from the database and call putALL. Is there any better approach to this?
    Another thing is if the data is more than 1 GB and if I construct a map of one GB before putting it into the cache the JVM might crash. The question is how do I distribute upront loading of the cache to multiple JVMs. Do I have to use invocation service or is there any thing out of box.

    I only use one JVMs and I use a distributed cache, the configuration XML file like this:
    <p> <distributed-scheme>
    <scheme-name>default-distributed</scheme-name>
    <service-name>DistributedCachestore</service-name>
    <backing-map-scheme>
    <read-write-backing-map-scheme>
    <scheme-ref>example-read-write</scheme-ref>
    </read-write-backing-map-scheme>
    </backing-map-scheme>
         <listener-scheme> </listener-scheme> 
         <autostart>true</autostart>
    </distributed-scheme>
    <read-write-backing-map-scheme>
    <scheme-name>example-read-write</scheme-name>
    <internal-cache-scheme>
    <local-scheme>
    <scheme-ref>default-eviction</scheme-ref>
    <high-units>50050</high-units>
    <low-units>40000</low-units>
    <expiry-delay>3600</expiry-delay> 
    </local-scheme>
    </internal-cache-scheme>
    <cachestore-scheme>
    <class-scheme>
    <scheme-ref>example-cachestore</scheme-ref>
    </class-scheme>
    </cachestore-scheme>
    <read-only>false</read-only>
    <write-delay-seconds>0</write-delay-seconds>
    </read-write-backing-map-scheme>
    <!-- 
    CacheStore test definition 
    -->
    <class-scheme>
    <scheme-name>example-cachestore</scheme-name>
    <class-name>com.tangosol.examples.coherence.DBCrudStore</class-name>
    <init-params>
    <init-param>
    <param-type>java.lang.String</param-type>
    <param-value>cachec</param-value>
    </init-param>
    </init-params>
    </class-scheme></p>
    The data in my table will reach about 1000000+ and I want to load about 50000 into cache.
    Thanks.

  • How do i edit the contents of a JAR file?

    i have a file named AdvancedPlayer.java (i edited this one) and there is a file in the Jlayer jar named AdvancedPlayer, how do i switch them?

    you can open your jar archive with WinZip or WinRar, and just delete the old file and put in new one. All the signing will be destroyed thou. So if you want your JAR to still be signed, you want to build your JAR with the correct file already in place.
    Also you know that .java file is source code and not executable like .class file? You prbl want to replace class files not java files.
    Edited by: Crazy_Russian on Jun 14, 2008 7:32 PM

  • How to Invoke a main class in a jar file from my project

    Hi
    I am a new user of the Sun Java Studio enterprise. I would like to know how i can invoke a main method in a jar file associated to the project.
    regards
    Nisanth

    Could you please clarify: do you want to run your project or a project from an independent jar?
    In the first case just select Run Project from the project context menu or select a class with main method and click Run File in the class context menu.
    Regarding the second case:
    - I don't think there is such a feature in the IDE (running third party jars is not an IDE function). Could you explain why you need this?

  • How to tell if a class within a jar file is being accessed?

    Hello,
    I have written a web app using NetBeans 5.5 and some external libraries.
    Rome 0.9 and a Rome module georss-rome.jar.
    Everything works fine with the integrated Netbeans tomcat 5.5...
    When I try to deploy this as a war using Tomcat 5.5 standalone It will not work properly. To make things worse, I get no error.
    In my code, I instantiate a class in the georss module by doing the following:
                    GeoRSSModule geoRssModule = GeoRSSUtils.getGeoRSS(entry);
                    if(geoRssModule != null)
    ...do something;
    }I then check for null and if not null I do stuff with methods within that jar.
    Basically I pass a rss feed or a georss feed. If its a georss feed then geoRssModule would not be null.
    As I said, this works fine within integrated tomcat but does nothing (no expected action) with standalone which leads me to believe that this is a deployment/jar/classpath issue.
    To me it seems that the class GeoRSSModule is never actually instantiated, but I never get any errors or expected output.
    I set tomcat logging.properties to FINEST for all types of logging.
    Is there a way to determine if the jar is even being accessed for that class file?
    TIA!
    BTW, I dont have the module source.
    I also verified that the jars (rome.jar and georss-rome.jar) are being deployed to webapps/myapp/WEB-INF/lib
    Message was edited by:
    gforty

    GeoRSSModule geoRssModule = GeoRSSUtils.getGeoRSS(entry);Try placing logging statements before and after this statement so that you can track execution. Make sure that your code at least gets to this particular line where you instantiate the GeoRSSModule object. Then place a logging statement afterwards to see if an object was indeed created.
    What helps me in situations like this is that I also use the NetBeans attached debugger listening on your standalone Tomcat installation. This allows you to trace your execution on the server side, one line at a time, giving you a clearer understanding of program flow.

  • Don't know how to make my main class import a jar file

    OK, the title doesn't make much sense but here are my create-jar.bat and manifest files:
    create-jar.bat:
    jar cvmf manifest.txt dassimul-admin.jar player/ admin/ com/ connector/ common/ *.class
    manifest.txt:
    Main-Class: admin.DASAdmin
    the problem is that in connector/ folder there is the jdbc mysql connector driver (.jar file).
    in Eclipse I can add this jar to the Java Build Path, so the program runs.
    When I double-click the dassimul-admin.jar file, I get a Class Not Found Exception
    C:\MYWORK\dassimul>java -jar dassimul-admin.jar
    FATAL ERROR WHILE LOADING SQL DRIVER: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
    I think that the problem lies in the fact that admin.DASAdmin can't see and import the jar file in connector/ folder... am I right?

    It looks like you are putting the mysql jar file inside the dassimul jar. That won't work unless you write custom code. You should use the Class-Path attribute of the manifest to define a relative path(s) to the other jar(s) that you need to use.
    [http://java.sun.com/docs/books/tutorial/deployment/jar/index.html]

  • Why won't LR 3 load all the images in a cataloged file?

    When I try to open a folder or collection of images (in Library, grid view), some of the images load right away, others take several seconds, and some never load. Instead I see gray boxes, albeit with the proper DSC number in the upper right corner of each. I'm using LR 3.6 on Windows 7.

    Hi Bob,
    The question is: where are your previews stored?
    Normally, without applying some hack, they are next to the catalog.
    On my windows7-system that is by default in
    C:\Users\[your username]\Pictures\Lightroom, a folder named "[your LR4-Catalog name] Previews.lrdata".
    So the previews should always be online.
    It may be that LR4 was not complete in building the previews when you closed it last time ?
    Otherwise I share your puzzlement. So I would render all standard previews for your entire catalog and then expect that it should not happen again...
    Becaues that is the beauty of a complete set of previews: I can do all sort of LR-work apart from Develop while the images themselves are offline - something I would never want to miss!
    Cornelia

  • Is it possible to load classes from a jar file

    Using ClassLoader is it possible to load the classes from a jar file?

    URL[] u = new URL[1] ;
    u[0] = new URL( "file://" + jarLocation + jarFileName + "/" );
    URLClassLoader jLoader = new URLClassLoader( u );
    Object clsName = jLoader.loadClass( clsList.elementAt(i).toString() ).newInstance();
    I get this error message.
    java.lang.ClassNotFoundException: ExceptionTestCase
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
    // "file://" + fileLocation + fileName + "/" This works fine from a browser.
    Is there anything I am missing? Thanks for the reply.

  • Accessing classes in external jar files

    I have a jar file called main. I want it to be able to acces the classes in another jar file say test.jar how do i do this.
    Thank you

    ok, if i have this right...
    you have 2 directories that hold 2 .jars, right?
    plugins/ -------- build/plugins .jar
    systemModuals/ ------- DiaryUI and Loader .jar
    Your main JAR is diary?
    Diary.jar
    you want Diary to run with the jars inside plugins and systemmoduals?
    you set the "class-path:" tag like this....
    write this manifest file. save it as Manifest.txt and put it in your home dir.
    Main-Class: YourMainClass
    Class-Path: Diary.jar plugins/this.jar systemmoduals/diaryui.jar
    <make sure to hit enter, go to the next line>
    command line to your parent directory.
    jar cmf Manifest.txt Diary.jar build/main/*.class
    you should be set to go.
    use
    jar xf META-INF/MANIFEST.MF
    to read the present manifest that netbeans has created
    if necessary

  • TS3212 ITunes worked fine on my Windows 7 machine.  Had to rebuild the machine but all the data remains.  Downloaded a new version of iTunes and cannot figure out how to load all of my music currently on my hard drive.  Tried moving Library file.  Did not

    ITunes worked fine on my Windows 7 machine.  Had to rebuild the machine but all the data remains.  Downloaded a new version of iTunes and cannot figure out how to load all of my music currently on my hard drive.  Tried moving "iTunes Library" file.  Did not work.  Never had trouble like this before.

    Many thanks for your post. I've been trying for days to get this sorted and was getting well fed up with I-Tunes. Really thought i'd never get it working again. Tried un-installing it, loading older versions and they still wouldn't work.
    Came across your suggestion by chance and top man - it worked..!!!!
    How you even knew what to do is beyond me - but thanks so much. I really was pulling my hair out.
    You need to put your post over the Web as there seem to be loads of people having the same trouble.
    Thanks again.

  • HT1725 I purchased a rental however it never loaded all the way. How do I get credit or not get charged to try it again since it has been over 24 hours?

    I purchased a rental and it did not load all the way andI was never able to watch it. Since I can't ever get anyone on the phone, does anyone have any idea how to either get credit or be able to try i again without getting charged?

    iTunes Store Support
    http://www.apple.com/emea/support/itunes/contact.html

Maybe you are looking for