Creating a JAR executable

I made a simple calculator in java and I want to zip it up in an excutable jar file. I have 3 classes including my main in my .java file and am having trouble creating the jar archive. The source code for this program is:
import java.awt.*;
import java.awt.event.*;
import java.io.File;
import javax.swing.*;
// Frame for button panel
class CalculatorFrame extends JFrame
     public CalculatorFrame()
          Toolkit kit = Toolkit.getDefaultToolkit();
          // sets title & icon image for window
          setTitle("Java Calculator v1.0 by D. Burkland");
          Image img = kit.getImage("calc.gif");
          setIconImage(img);     
          // add panel to frame
          CalculatorPanel calculator = new CalculatorPanel();
          add(calculator);
          pack();
          // centers frame
          Dimension screenSize = kit.getScreenSize();
          int screenHeight = screenSize.height;
          int screenWidth = screenSize.width;
          // center & set dimensions of frame
          setSize(width, height);
          setLocation(screenWidth / 3, screenHeight / 3);
          // set file chooser
          chooser = new JFileChooser();
          chooser.setCurrentDirectory(new File("."));
          // set up menu bar
          JMenuBar menuBar = new JMenuBar();
          setJMenuBar(menuBar);
          JMenu filemenu = new JMenu("File");
          JMenu helpmenu = new JMenu("Help");
          menuBar.add(filemenu);
          menuBar.add(helpmenu);
          // action of the exit text
          JMenuItem exitItem = new JMenuItem("Exit");
          filemenu.add(exitItem);
          exitItem.addActionListener(new
                    ActionListener()
                         public void actionPerformed(ActionEvent event)
                              System.exit(0);
          JMenuItem helpItem = new JMenuItem("About");
          helpmenu.add(helpItem);
          helpItem.addActionListener(new
                    ActionListener()
                         public void actionPerformed(ActionEvent event)
                              JOptionPane.showMessageDialog(null, "Java Calculator By: D. Burkland Summer 2006");               
     public static final int width = 350;
     public static final int height = 200;
     private JFileChooser chooser;
// Calculator panel
class CalculatorPanel extends JPanel
     public CalculatorPanel()
          setLayout(new BorderLayout());
          result = 0;
          lastCommand = "=";
          start = true;
          // add the display
          display = new JButton("Hello");
          display.setEnabled(false);
          add(display, BorderLayout.NORTH);
          ActionListener insert = new InsertAction();
          ActionListener command = new CommandAction();
          // adds the buttons in a 4 x 4 grid
          calculator = new JPanel();
          calculator.setLayout(new GridLayout(4, 4));
          addButton("7", insert);
          addButton("8", insert);
          addButton("9", insert);
          addButton("/", command);
          addButton("4", insert);
          addButton("5", insert);
          addButton("6", insert);
          addButton("*", command);
          addButton("1", insert);
          addButton("2", insert);
          addButton("3", insert);
          addButton("-", command);
          addButton("0", insert);
          addButton(".", insert);
          addButton("=", command);
          addButton("+", command);
          add(calculator, BorderLayout.CENTER);
     Adds a button to the center panel
     @param lable the button label
     @param listener the button listener
     private void addButton(String label, ActionListener listener)
          JButton button = new JButton(label);
          button.addActionListener(listener);
          calculator.add(button);
     // Inserts the button action string to the end of the display
     private class InsertAction implements ActionListener
          public void actionPerformed(ActionEvent event)
               String input = event.getActionCommand();
               if (start)
                    display.setText("");
                    start = false;
               display.setText(display.getText() + input);
     // Executes the command that the button action string demotes
     private class CommandAction implements ActionListener
          public void actionPerformed(ActionEvent event)
               String command = event.getActionCommand();
               if (start)
                    if (command.equals("-"))
                         display.setText(command);
                         start = false;
                    else
                         lastCommand = command;
               else
                    calculate(Double.parseDouble(display.getText()));
                    lastCommand = command;
                    start = true;
     // Carries out the pending calculation
     public void calculate(double x)
          if (lastCommand.equals("+")) result += x;
          else if (lastCommand.equals("-")) result -= x;
          else if (lastCommand.equals("*")) result *= x;
          else if (lastCommand.equals("/")) result /= x;
          else if (lastCommand.equals("=")) result = x;
          display.setText("" + result);
     private JButton display;
     private JPanel calculator;
     private double result;
     private String lastCommand;
     private boolean start;
public class Calculator
     public static void main(String[] args)
          CalculatorFrame calculator = new CalculatorFrame();
          calculator.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
          calculator.setVisible(true);
}I am using Eclipse to create the jar files so if anybody has any advice I would be very grateful if you shared it.
Thanks,
Danny

Well I keep getting errors so I am doing something wrong. The errors I get are:
java.io.FileNotFoundException: jarexample.jar (The system cannot find the file specified)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:
106)
java.io.FileInputStream.<init>(FileInputStream.java:66)
at sun.tools.jar.Main.run(Main.java:122)
at sun.tools.jar.Main.main(Main.java:903)So I have 3 classes, but after compiling the program I have many .class files: Calculator.class, CalculatorFrame$1.class, CalculatorFrame$2.class, CalculatorFrame.class, CalculatorPanel$CommandAction.class, CalculatorPanel$InsertAction.class, and CalculatorPanel.class. Which files do I want to export into my jar file and do I have to open these class files in Eclipse? Also could you explain the manifest thing first, I have googled for this stuff but get confused because of the class file issue that I previously stated.
Thanks again for helping a noobie out :)
Message was edited by:
danny9894
Message was edited by:
danny9894

Similar Messages

  • Problems creating a jar executable file...

    Hi there, I am new to these forums, my name is Jay.
    I am trying to create an executable .jar file for my program I created in JBuilder 2005, with java files and several other files as well. I am having MAJOR problems with either the main class not being found or failing to load Main-Class manifest attribute.
    I tried to make a .txt with two lines, including the first with the MAIN-CLASS: className and stuff and a second line blank, and use the cmf command line to run it and include it in there. I ran it and created it no problem, but then I try to run it, and I get the error of the main class not being found and I have specified the correct directory and class name.
    Then I try to make my own manifest file with the correct directory and class name by making a txt file into an .mf file and when I try the cf command line this time, it gives me the error of failing to load Main-Class manifest attribute.
    I have even followed the tutorials on the Sun developer website including Manifest making and stuff and everything.
    I have worked on this program (java) for months and I am now STUCK. If someone could maybe give me some assistance or suggestions as to what my problem might be, I would greatly appreciate it so much. Or if you want, you can e-mail me, @ [email protected] with suggestions. Thank you all very much.
    I have a folder in a directory. It's called SuperPassword, which is the folder where my project files and EVERYTHING is. my .class files are in the classes/superpassword subdirectory of the folder SuperPassword, my java files are in the src/superpassword subdirectory and my manifest file and txt files are in the SuperPassword main directory. Maybe that could give you guys a bit of a hint as to what I am dealing with, I want to explain it as clearly as possible.
    Jay

    I have a folder in a directory. It's called
    SuperPassword, which is the folder where my project
    files and EVERYTHING is. my .class files are in the
    classes/superpassword subdirectory of the folder
    SuperPassword, my java files are in the
    src/superpassword subdirectory and my manifest file
    and txt files are in the SuperPassword main
    directory. Maybe that could give you guys a bit of a
    hint as to what I am dealing with, I want to explain
    it as clearly as possible.
    JaySo I guess you have a directory path SuperPassword\classes\superpassword and the .class files are inside. Are the classes in a superpassword package? If they are, then the Main-Class must be something like "superpassword.MainClass" and when you jar the .class files you need to make sure they are in a superpassword directory inside the jar - like "jar cmf thejar.jar themanifest.txt superpassword\*.class"
    You can check the directory structure by displaying the contents of the jar using "jar tf thejar.jar"
    Also, remember that java is case sensitive.

  • How can i create a jar executable archive

    I could not find the way to create an executable archive from Oracle JDeveloper 10.1.3.3.0 .
    I have an application and a project with many packages that i want to archive.
    If somebody could help please .

    Well i red somewhere that It is also possible to make an archive that can be executed (run) by Java and even by a double click through your OS, if you have it set up correctly and that is what i want to do , a jar file which embraces all my packages and run a specified Main class.

  • JAR Executable works in netbeans but not under Dos?

    Hi all,
    I have created a jar executable and it works fine in netbeans(it was not created in netbeans) but I can't get it to run on the command line. If I type java ClassName.MainClass it will run but not using the command java JarFile.jar or java -jar JarFile.jar
    Any help would be most appreciated.

    When creating the manifest file did you add a carriage return at the end of the manifest? e.g.
    Main-Class:Hello.class
    (carriage return here on new line)
    I think it runs into problems if you dont add a carriage return ( a new blank line after manifest).
    Hope this helps
    Riz

  • How do I put my jar executables into a cab file to create a setup/install?

    I want to create a setup program for installing my jar executable. I've seen ones that create cab files with a setup.exe program and would like to do the same. Any suggestions?

    Well, JARs generally don't have support files. That's the whole idea. A JAR is designed to be a stand alone application. You don't really need to install it, for that matter. I just thought you might be wanted shortcuts or something.
    Actually, there is some way to install Java programs through Java Web Start, if you want to check that out. I don't know anything about it, though.

  • How do i create this an executable jar???

    I have the following package structure, could anybodt tell me what i have to type into my manifest file to get it to work? thanks
    com/anoobis/userInterface/UserInterface.class <-- main class
    com/anoobis/xml/Generate.class
    com/anoobis/panels/StatusBar.class
    com/anoobis/panels/Ticket.class
    com/anoobis/panels/Properties.class
    lib/TableLayout.jar <-- a jar file i use
    thanks in advance
    Avenger

    jar -cfm Run.jar manifest.txt
    com/anoobis/userinterface/*.class
    it is creating the jar file but it is tiny (4KB) and
    comes up with the error message "Could not find the
    main class. Program will exit."
    Message was edited by:
    CyborgAvengerOpen your jar with WinZip or some zip viewing utility. I am sure that it has not been packaged correctly [the package structure for the class is not present] and hence the main class is not found. You need to run the jar command on the base directory which contains the package directories and the classes inside it.

  • Creating a JAR in Eclipse...can't access files in the JAR properly.

    Hi all! I'm a newbie at JAR creation, and am having troubles. I have a project that loads images from image files in my project. I can create the JAR and all, and it runs, but the buttons that have ImageIcons with those IO loaded images are blank. I've tried to include the images when creating the JAR, but it keeps acting like the images never existed. When I run the JAR and have the images separately included in the directory (instead of packing them up too), it won't work as well...UNLESS those images are put in my $HOME directory (Linux).
    Does anyone know how I can properly refer to the images that I'm trying to pack into the JAR from within the JAR? Or, is there a way for the JAR to understand where those images are supposed to be (redirect the focus from the $HOME directory to the JAR's directory)? Any help would be greatly appreciated! :)
    -Keith

    Hi,
    Can the user execute the program through explorer? In Windows Server 2003, the Users group does not have Read and Execute permissions to the command processor (Cmd.exe). 
    You could refer to the article below to resolve the issue:
    "Access is denied" error message when you run a batch job on a Windows Server 2003-based computer
    http://support.microsoft.com/kb/867466
    Best Regards,
    Mandy 
    We
    are trying to better understand customer views on social support experience, so your participation in this
    interview project would be greatly appreciated if you have time.
    Thanks for helping make community forums a great place.

  • Help To Create a Jar File

    hi there
    i wanna create a exe file so i am trying to use jar file.
    I am new at creating jar files, my application has a main file and other java files, i am using other java files in my main file my concern is can i create a jar file including all the files and when i run jar file i want to complie java files, i really appreciate if anyone can help me out creating a jar file to compile and execute java files

    http://java.sun.com/j2se/1.4.2/docs/guide/jar/index.html

  • Create a .jar with a database in mysql????

    Hi !!!!
    I create a script in .java, and I have none error. My script use a database, to read and to save some data.
    I create a Manifest.mf
    Manifest-Version: 1.0
    Main-Class: AutoPlanning
    Class-Path: DriverJava/mm.mysql-2.04/mysql.jar
    What are the command to create this .jar?
    Thanks !!!

    I tried your advice. I create a lib directory and I copie all these .jar files :
    gnujaxp.jar
    jcommon-1.0.0-rc1.jar
    jfreechart-1.0.0-rc1.jar
    junit.jar
    servlet.jar
    mysql.jar;
    And my Manisfest file is now :
    Main-Class: AutoPlanning
    Class-Path: .;lib/gnujaxp.jar;lib/jcommon-1.0.0-rc1.jar;lib/jfreechart-1.0.0-rc1.jar;lib/junit.jar;lib/servlet.jar;lib/mysql.jar;
    Next I execute :
    - jar cvmf Manifest.mf AutoPlanning.jar *.class lib/*.jar Aide Images Config
    - java -jar AutoPlanning.jar
    Unfortunately I have still the same problem
    Driver non trouve : java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
    Connexion refuse ou base inconnu : java.sql.SQLException: No suitable driver
    Exception in thread "main" java.lang.NoClassDefFoundError: org/jfree/data/catego
    ry/CategoryDataset
    at Fenetre.<init>(Fenetre.java:388)
    at Start.<init>(Start.java:21)
    at AutoPlanning.main(AutoPlanning.java:20)
    But thanks you for your answer :)

  • What is the command to create a jar file through Command Promt?

    Hi,
    I done my java project. Now i need to create a exe or jar file to fully complete it. I decided to create a jar file. Because, It'll support both PC and MAC. I exported my JAR file through eclipse. But that jar file loads without images and icons when it is in other directory. How can i include images folder in a JAR File.
    For ex:
    I have parent folder named "Support". Under this there is 3 subfolder namely
    bin - Classes
    src - java files
    images - image files.
    I need to create jar file to "Support" folder which should contain all the above mentioned sub folders.
    I need to execute this jar file anywhere which should not depend on the above mentioned folders which mean adding the images folder in that created jar file.
    Pls guide me for this problem.
    Thanks in advance
    Regards,
    Mohan

    But that jar file loads without images and icons when it is in other directory.Images should be accessed via a URL rather than using a filename because they will exist as entries in the jar archive not as files. Typically this URL would be obtained by using the Class method [getResource()|http://java.sun.com/javase/6/docs/api/java/lang/Class.html#getResource(java.lang.String)]. There are details in this [Java World article|http://www.javaworld.com/javaworld/javaqa/2002-11/02-qa-1122-resources.html].

  • Including images in jar executable files. Using images in jar files.

    Does anybody know what is the reason of my problem??
    I created a package called test in my eclipse env. and in that package I placed folder named graph in which there is a file Help.png.
    Here is all the code I run in eclipse and it runs properly. When I create a jar file (using eclipse wizard) to execute without eclipse it can not execute and shows nothing (process starts and I have to kill it by myself in OS). Maybe there is some mistake with making jar... I do not know
    So let someone try tu run my class or build jar file and try to execute and share his observations (solutions) ??
    package test;
    import java.awt.Toolkit;
    import javax.swing.ImageIcon;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.UIManager;
    public class TestWindow extends JFrame {
         private JButton jButton1 = new JButton(new JARImage().getImage("Help.png"));
         public TestWindow() {
              this.getContentPane().add(jButton1);
              this.validate();
              this.setVisible(true);
         private class JARImage {
              protected ImageIcon getImage(String imageName) {
                   ImageIcon image = new ImageIcon();
                   try {
                        image.setImage((Toolkit.getDefaultToolkit().getImage(getClass()
                                  .getResource("graph/" + imageName))));
                   } catch (Exception ex) {
                        System.out.println("Image Error: " + ex);
                        ex.printStackTrace();
                   return image;
         public static void main(String[] args) {
              try {
                   UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
              } catch (Exception e) {
                   e.printStackTrace();
              new TestWindow();
    }

    Uncaught error fetching image:
    java.lang.NullPointerException
         at sun.awt.image.URLImageSource.getConnection(Unknown Source)
         at sun.awt.image.URLImageSource.getDecoder(Unknown Source)
         at sun.awt.image.InputStreamImageSource.doFetch(Unknown Source)
         at sun.awt.image.ImageFetcher.fetchloop(Unknown Source)
         at sun.awt.image.ImageFetcher.run(Unknown Source)

  • Jar executable issue after jvm update

    I created a small demo application and bundled my classes and media files in a jar executable file. Everything was fine until I updated J2SE from 1.5.0 to 1.6.0_01.
    The application now starts, gets its input normally but soon after hangs, and the Swing GUI doesn't show up anymore.
    The jar file contains 4 packages (one of them contains the main class) and this simple manifest file:
    Main-Class: myapp.myAppLauncher
    Classpath: .\myapp.jar
    I created the jar as follows:
    jar cvfm gdv.jar Manifest.txt myapp mypackage2 mypackage3 mypackage4
    I recompiled the source before creating the jar archive, and if I launch the application from the console I see no difference from before. The problem is only for the jar version.

    Manually download and install the Java 4 update http://www.apple.com/downloads/macosx/apple/application_updates/javaformacosx105 update4.html, and Safari 4.0.1 http://www.apple.com/safari/download/ Run Software update, install anything that pop up, repair permissions, and restart. That should fix your problem.

  • .jar executable

    Hi!
    I have been trying to create an executable jar, but I only get the message "Could not find main class. Program will exit".
    This is what I have done!
    1. I created a java file that prints "Hello". This is the one
    import java.io.*;
    public class Test{
         public static void main (String [] args) throws IOException{
              System.out.println("Hello");
    2. I compile it
    3. I make a jar of the two files. The java file and the class file. To do so I type the following in the command window:
    jar cf temp.jar Test.java Test.class
    4. I create a manifest file and name it Manifest.txt. It contains the text:
    Main-Class: temp.Test
    5. I now create the (expected) executable jar file. Typing the following in the command window:
    jar cfm MyJar.jar Manifest.txt temp.jar
    And when I now try to double click the MyJar.jar I only get "Could not find main class. Program will exit". WHAT am I doing wrong??? Please help!
    /Jonathan

    jonfra wrote:
    Hi!
    I have been trying to create an executable jar, but I only get the message "Could not find main class. Program will exit".
    This is what I have done!
    1. I created a java file that prints "Hello". This is the one
    import java.io.*;
    public class Test{
         public static void main (String [] args) throws IOException{
              System.out.println("Hello");
    First off, you know that you don't need to import java.io or throw IOException for what you have here, okay?
    2. I compile it
    How did you compile it? As >javac Test.java? ... or >javac -classpath . Test.java? ... or ?
    3. I make a jar of the two files. The java file and the class file. To do so I type the following in the command window:
    Not wrong to do it, but why do you want the source code in the jar file?
    jar cf temp.jar Test.java Test.class
    I'd skip this step '3' and move on to step 4.
    4. I create a manifest file and name it Manifest.txt. It contains the text:
    Main-Class: temp.TestMake sure that you have an EOL character at the end of Manifest.txt - like so:
    Main-Class: temp.Test
    - this line needs to be blank -
    Also, why the temp. ? your class - as Mapleshaft alluded to, does not have a package statement.
    >
    5. I now create the (expected) executable jar file. Typing the following in the command window:
    jar cfm MyJar.jar Manifest.txt temp.jar
    After skipping step 3 entirely, jar as:
    jar cmf0 Manifest.txt MyJar.jar Test.class
    And when I now try to double click the MyJar.jar I only get "Could not find main class. Program will exit". WHAT am I doing wrong??? Please help!
    /JonathanLastly, this is not a GUI, so double clicking on it won't do anything anyway. You'll need to run it from the command line as >java -jar MyJar.jar

  • OSB Failed to create temporary jar file error

    Hi everybody!
    Lately we have been experimenting following error with OSB in production environment:
    Caused By: com.bea.wli.sb.stages.StageException: com.bea.wli.config.component.NotFoundException: Failed to create temporary jar file
         at stages.transform.runtime.JavaCalloutRuntimeStep.<init>(JavaCalloutRuntimeStep.java:122)
         at stages.transform.JavaCalloutFactory.getStageRuntime(JavaCalloutFactory.java:80)
         at com.bea.wli.sb.stages.StageMetadataImpl$DefaultStageFactory.getStageRuntime(StageMetadataImpl.java:245)
         at com.bea.wli.sb.stages.impl.RuntimeBuilderImpl.buildRuntime(RuntimeBuilderImpl.java:92)
         at com.bea.wli.sb.stages.impl.RuntimeBuilderImpl.buildRuntime(RuntimeBuilderImpl.java:68)
         at com.bea.wli.sb.pipeline.RouterCompiler.getActionsRuntime(RouterCompiler.java:153)
         at com.bea.wli.sb.pipeline.PipelineStage.<init>(PipelineStage.java:55)
         at com.bea.wli.sb.pipeline.RouterCompiler.compileStage(RouterCompiler.java:104)
         at com.bea.wli.sb.pipeline.Pipeline.<init>(Pipeline.java:105)
         at com.bea.wli.sb.pipeline.RouterCompiler.compilePipeline(RouterCompiler.java:97)
         at com.bea.wli.sb.pipeline.Router.<init>(Router.java:138)
         at com.bea.wli.sb.pipeline.RouterCompiler.compileRouter(RouterCompiler.java:90)
         at com.bea.wli.sb.pipeline.RouterCompiler.compile(RouterCompiler.java:80)
         at com.bea.wli.sb.pipeline.RouterManager.compileRouter(RouterManager.java:667)
         at com.bea.wli.sb.pipeline.RouterRuntimeCache$RouterRuntimeDerivedTypeDef.computeData(RouterRuntimeCache.java:83)
         at com.bea.wli.sb.pipeline.RouterRuntimeCache$RouterRuntimeDerivedTypeDef.computeData(RouterRuntimeCache.java:50)
         at com.bea.wli.config.derivedcache.DerivedCache.deriveTheValue(DerivedCache.java:453)
         at com.bea.wli.config.derivedcache.DerivedCache.get(DerivedCache.java:273)
         at com.bea.wli.config.derivedcache.DerivedResourceManager.getDerivedValueInfo(DerivedResourceManager.java:341)
         at com.bea.wli.config.derivedcache.DerivedResourceManager.get(DerivedResourceManager.java:386)
         at com.bea.wli.sb.resources.cache.DefaultDerivedTypeDef.getDerivedValue(DefaultDerivedTypeDef.java:106)
         at com.bea.wli.sb.pipeline.RouterRuntimeCache.getRuntime(RouterRuntimeCache.java:44)
         at com.bea.wli.sb.pipeline.RouterManager.getRouterRuntime(RouterManager.java:638)
         at com.bea.wli.sb.pipeline.RouterContext.getInstance(RouterContext.java:173)
         at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:579)
         at com.bea.wli.sb.transports.TransportManagerImpl.receiveMessage(TransportManagerImpl.java:375)
         at com.bea.wli.sb.transports.jms.JmsInboundMDB.onMessage(JmsInboundMDB.java:122)
         at sun.reflect.GeneratedMethodAccessor2974.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
         at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
         at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
         at $Proxy162.onMessage(Unknown Source)
         at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:466)
         at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:371)
         at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:327)
         at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659)
         at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345)
         at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821)
         at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115)
         at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170)
         at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Caused By: com.bea.wli.config.component.NotFoundException: Failed to create temporary jar file
         at com.bea.wli.sb.resources.archive.classloader.ArchiveClassLoaderDerivedTypeDef.computeData(ArchiveClassLoaderDerivedTypeDef.java:160)
         at com.bea.wli.sb.resources.archive.classloader.ArchiveClassLoaderDerivedTypeDef.computeData(ArchiveClassLoaderDerivedTypeDef.java:34)
         at com.bea.wli.config.derivedcache.DerivedCache.deriveTheValue(DerivedCache.java:453)
         at com.bea.wli.config.derivedcache.DerivedCache.get(DerivedCache.java:273)
         at com.bea.wli.config.derivedcache.DerivedResourceManager.getDerivedValueInfo(DerivedResourceManager.java:341)
         at com.bea.wli.config.derivedcache.DerivedResourceManager.get(DerivedResourceManager.java:386)
         at com.bea.wli.sb.resources.cache.DefaultDerivedTypeDef.getDerivedValue(DefaultDerivedTypeDef.java:106)
         at com.bea.wli.sb.resources.archive.classloader.ArchiveClassLoaderCache.get(ArchiveClassLoaderCache.java:38)
         at com.bea.wli.sb.resources.archive.summary.ArchiveSummaryDerivedTypeDef.computeData(ArchiveSummaryDerivedTypeDef.java:46)
         at com.bea.wli.sb.resources.archive.summary.ArchiveSummaryDerivedTypeDef.computeData(ArchiveSummaryDerivedTypeDef.java:23)
         at com.bea.wli.config.derivedcache.DerivedCache.deriveTheValue(DerivedCache.java:453)
         at com.bea.wli.config.derivedcache.DerivedCache.get(DerivedCache.java:273)
         at com.bea.wli.config.derivedcache.DerivedResourceManager.getDerivedValueInfo(DerivedResourceManager.java:341)
         at com.bea.wli.config.derivedcache.DerivedResourceManager.get(DerivedResourceManager.java:386)
         at com.bea.wli.sb.resources.cache.DefaultDerivedTypeDef.getDerivedValue(DefaultDerivedTypeDef.java:106)
         at com.bea.wli.sb.resources.archive.summary.ArchiveSummaryCache.getArchiveSummary(ArchiveSummaryCache.java:31)
         at com.bea.wli.sb.resources.archive.ArchiveRuntimeManager.getMethod(ArchiveRuntimeManager.java:367)
         at stages.transform.runtime.JavaCalloutRuntimeStep.<init>(JavaCalloutRuntimeStep.java:100)
         at stages.transform.JavaCalloutFactory.getStageRuntime(JavaCalloutFactory.java:80)
         at com.bea.wli.sb.stages.StageMetadataImpl$DefaultStageFactory.getStageRuntime(StageMetadataImpl.java:245)
         at com.bea.wli.sb.stages.impl.RuntimeBuilderImpl.buildRuntime(RuntimeBuilderImpl.java:92)
         at com.bea.wli.sb.stages.impl.RuntimeBuilderImpl.buildRuntime(RuntimeBuilderImpl.java:68)
         at com.bea.wli.sb.pipeline.RouterCompiler.getActionsRuntime(RouterCompiler.java:153)
         at com.bea.wli.sb.pipeline.PipelineStage.<init>(PipelineStage.java:55)
         at com.bea.wli.sb.pipeline.RouterCompiler.compileStage(RouterCompiler.java:104)
         at com.bea.wli.sb.pipeline.Pipeline.<init>(Pipeline.java:105)
         at com.bea.wli.sb.pipeline.RouterCompiler.compilePipeline(RouterCompiler.java:97)
         at com.bea.wli.sb.pipeline.Router.<init>(Router.java:138)
         at com.bea.wli.sb.pipeline.RouterCompiler.compileRouter(RouterCompiler.java:90)
         at com.bea.wli.sb.pipeline.RouterCompiler.compile(RouterCompiler.java:80)
         at com.bea.wli.sb.pipeline.RouterManager.compileRouter(RouterManager.java:667)
         at com.bea.wli.sb.pipeline.RouterRuntimeCache$RouterRuntimeDerivedTypeDef.computeData(RouterRuntimeCache.java:83)
         at com.bea.wli.sb.pipeline.RouterRuntimeCache$RouterRuntimeDerivedTypeDef.computeData(RouterRuntimeCache.java:50)
         at com.bea.wli.config.derivedcache.DerivedCache.deriveTheValue(DerivedCache.java:453)
         at com.bea.wli.config.derivedcache.DerivedCache.get(DerivedCache.java:273)
         at com.bea.wli.config.derivedcache.DerivedResourceManager.getDerivedValueInfo(DerivedResourceManager.java:341)
         at com.bea.wli.config.derivedcache.DerivedResourceManager.get(DerivedResourceManager.java:386)
         at com.bea.wli.sb.resources.cache.DefaultDerivedTypeDef.getDerivedValue(DefaultDerivedTypeDef.java:106)
         at com.bea.wli.sb.pipeline.RouterRuntimeCache.getRuntime(RouterRuntimeCache.java:44)
         at com.bea.wli.sb.pipeline.RouterManager.getRouterRuntime(RouterManager.java:638)
         at com.bea.wli.sb.pipeline.RouterContext.getInstance(RouterContext.java:173)
         at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:579)
         at com.bea.wli.sb.transports.TransportManagerImpl.receiveMessage(TransportManagerImpl.java:375)
         at com.bea.wli.sb.transports.jms.JmsInboundMDB.onMessage(JmsInboundMDB.java:122)
         at sun.reflect.GeneratedMethodAccessor2974.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
         at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
         at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
         at $Proxy162.onMessage(Unknown Source)
         at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:466)
         at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:371)
         at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:327)
         at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659)
         at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345)
         at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821)
         at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115)
         at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170)
         at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Caused By: java.io.IOException: No such file or directory
         at java.io.UnixFileSystem.createFileExclusively(Native Method)
         at java.io.File.checkAndCreate(File.java:1704)
         at java.io.File.createTempFile(File.java:1792)
         at com.bea.wli.sb.util.IOUtils.storeToTempFile(IOUtils.java:245)
         at com.bea.wli.sb.resources.archive.classloader.ArchiveClassLoaderDerivedTypeDef.computeData(ArchiveClassLoaderDerivedTypeDef.java:120)
         at com.bea.wli.sb.resources.archive.classloader.ArchiveClassLoaderDerivedTypeDef.computeData(ArchiveClassLoaderDerivedTypeDef.java:34)
         at com.bea.wli.config.derivedcache.DerivedCache.deriveTheValue(DerivedCache.java:453)
         at com.bea.wli.config.derivedcache.DerivedCache.get(DerivedCache.java:273)
         at com.bea.wli.config.derivedcache.DerivedResourceManager.getDerivedValueInfo(DerivedResourceManager.java:341)
         at com.bea.wli.config.derivedcache.DerivedResourceManager.get(DerivedResourceManager.java:386)
         at com.bea.wli.sb.resources.cache.DefaultDerivedTypeDef.getDerivedValue(DefaultDerivedTypeDef.java:106)
         at com.bea.wli.sb.resources.archive.classloader.ArchiveClassLoaderCache.get(ArchiveClassLoaderCache.java:38)
         at com.bea.wli.sb.resources.archive.summary.ArchiveSummaryDerivedTypeDef.computeData(ArchiveSummaryDerivedTypeDef.java:46)
         at com.bea.wli.sb.resources.archive.summary.ArchiveSummaryDerivedTypeDef.computeData(ArchiveSummaryDerivedTypeDef.java:23)
         at com.bea.wli.config.derivedcache.DerivedCache.deriveTheValue(DerivedCache.java:453)
         at com.bea.wli.config.derivedcache.DerivedCache.get(DerivedCache.java:273)
         at com.bea.wli.config.derivedcache.DerivedResourceManager.getDerivedValueInfo(DerivedResourceManager.java:341)
         at com.bea.wli.config.derivedcache.DerivedResourceManager.get(DerivedResourceManager.java:386)
         at com.bea.wli.sb.resources.cache.DefaultDerivedTypeDef.getDerivedValue(DefaultDerivedTypeDef.java:106)
         at com.bea.wli.sb.resources.archive.summary.ArchiveSummaryCache.getArchiveSummary(ArchiveSummaryCache.java:31)
         at com.bea.wli.sb.resources.archive.ArchiveRuntimeManager.getMethod(ArchiveRuntimeManager.java:367)
         at stages.transform.runtime.JavaCalloutRuntimeStep.<init>(JavaCalloutRuntimeStep.java:100)
         at stages.transform.JavaCalloutFactory.getStageRuntime(JavaCalloutFactory.java:80)
         at com.bea.wli.sb.stages.StageMetadataImpl$DefaultStageFactory.getStageRuntime(StageMetadataImpl.java:245)
         at com.bea.wli.sb.stages.impl.RuntimeBuilderImpl.buildRuntime(RuntimeBuilderImpl.java:92)
         at com.bea.wli.sb.stages.impl.RuntimeBuilderImpl.buildRuntime(RuntimeBuilderImpl.java:68)
         at com.bea.wli.sb.pipeline.RouterCompiler.getActionsRuntime(RouterCompiler.java:153)
         at com.bea.wli.sb.pipeline.PipelineStage.<init>(PipelineStage.java:55)
         at com.bea.wli.sb.pipeline.RouterCompiler.compileStage(RouterCompiler.java:104)
         at com.bea.wli.sb.pipeline.Pipeline.<init>(Pipeline.java:105)
         at com.bea.wli.sb.pipeline.RouterCompiler.compilePipeline(RouterCompiler.java:97)
         at com.bea.wli.sb.pipeline.Router.<init>(Router.java:138)
         at com.bea.wli.sb.pipeline.RouterCompiler.compileRouter(RouterCompiler.java:90)
         at com.bea.wli.sb.pipeline.RouterCompiler.compile(RouterCompiler.java:80)
         at com.bea.wli.sb.pipeline.RouterManager.compileRouter(RouterManager.java:667)
         at com.bea.wli.sb.pipeline.RouterRuntimeCache$RouterRuntimeDerivedTypeDef.computeData(RouterRuntimeCache.java:83)
         at com.bea.wli.sb.pipeline.RouterRuntimeCache$RouterRuntimeDerivedTypeDef.computeData(RouterRuntimeCache.java:50)
         at com.bea.wli.config.derivedcache.DerivedCache.deriveTheValue(DerivedCache.java:453)
         at com.bea.wli.config.derivedcache.DerivedCache.get(DerivedCache.java:273)
         at com.bea.wli.config.derivedcache.DerivedResourceManager.getDerivedValueInfo(DerivedResourceManager.java:341)
         at com.bea.wli.config.derivedcache.DerivedResourceManager.get(DerivedResourceManager.java:386)
         at com.bea.wli.sb.resources.cache.DefaultDerivedTypeDef.getDerivedValue(DefaultDerivedTypeDef.java:106)
         at com.bea.wli.sb.pipeline.RouterRuntimeCache.getRuntime(RouterRuntimeCache.java:44)
         at com.bea.wli.sb.pipeline.RouterManager.getRouterRuntime(RouterManager.java:638)
         at com.bea.wli.sb.pipeline.RouterContext.getInstance(RouterContext.java:173)
         at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:579)
         at com.bea.wli.sb.transports.TransportManagerImpl.receiveMessage(TransportManagerImpl.java:375)
         at com.bea.wli.sb.transports.jms.JmsInboundMDB.onMessage(JmsInboundMDB.java:122)
         at sun.reflect.GeneratedMethodAccessor2974.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
         at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
         at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
         at $Proxy162.onMessage(Unknown Source)
         at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:466)
         at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:371)
         at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:327)
         at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659)
         at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345)
         at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821)
         at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115)
         at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170)
         at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    It seems that error is caused because OSB is unable to create temporary jar file in /tmp/alsbTempJars. I looked for path and actually directory alsbTempJars is not present on disk. I had already created that directory in the past so I can't figure why it has been deleted.
    Also I saw some out of disk space error in logs although I checked that it is at least 1Gb free at OSB mount point.
    We've realized of this problem when checking logs after we got an error working with OSB web console.
    To solve this error I had to create alsbTempJars directory and restart the node. Then error stopped and processing continued normaly. I think node activity was interrupted during error as I only see stack traces in log file.
    OSB runs in a Linux machine with user Oracle that is also owner of alsbTempJars directory.
    Hope someone could help us with this.
    Regards,
    Daniel.

    In case /tmp directory is automatically deleted, is it possible to configure a custom directory for alsbTempJars dir in OSB to assure it is never deleted?Add the -Djava.io.tmpdir=newTempDir parameter in the JAVA_PROPERTIES section of the setDomainEnv.sh script. This new location should be outside of the /tmp dir to avoid being cleared by any process.
    I think best soultion would be to have alsbTempJars automatically created whenever /tmp is purged.Doing it on the fly may not be possible however you may anytime raise an enhancement request with support and if prod dev approves it, you may get a fix.
    Regards,
    Anuj

  • Creating a JAR File for a program that depends on other JAR files

    Hi, I'm pretty new to this so it shouldn't be terribly hard to answer:
    I have a program which uses JGoodies. There are 2 JGoodies .jar files in the same directory as my program. So I compile it by doing:
    javac -extdirs . NameOfMyProgram.java
    First off, is this the best way to do it? Is there any way of 'calling' these JAR files from within NameOfMyProgram.java?
    Secondly, if I then try to run it by doing java NameOfMyProgram, it doesn't work; can't find the JGoodies stuff. I end up having to add the classpaths of the unzipped JGoodies directories.
    So I have 2 questions:
    1. How can I execute my file so that it reads from the JAR files, not the big expanded folders that I unzipped?
    2. How can I create a JAR file that reads the JGoodies files properly? Right now, I have a Manifest.txt file that looks like:
    Main-Class: NameOfMyProgram
    Class-Path: forms-1.0.5.jar
    Class-Path: looks-1.3.1.jar
    Thanks a lot for your help!

    - learn how to use mysql JDBC
    - pack JDBC driver only
    - remotely access your DB
    - set proper security level for your app

Maybe you are looking for