How to run Java programs by clicking on their icon

2020-01-29 01:33发布

I have written a Java program that uses Java swing library. Now I would like to execute this program by double clicking on the executable file on Windows just like any other program with a GUI. How do I do that?

12条回答
祖国的老花朵
2楼-- · 2020-01-29 01:34

There are two ways. Both involve packaging your code in a .jar.

The first way is to build an actual .exe file using a tool like Launch4j. It will require you to set up things like tell it which class to execute, which icon to use, which JRE is OK, what JRE parameters to use, etc.

The second option is to make the .jar itself executable. You do this by adding a manifest to the .jar. The manifest is a small configuration file that describes the jar. One of the attributes is Main-Class which defines the entry point. In other words, it says which class has the main function that should be called when the user double-clicks the file. Here's a basic tutorial about manifests: http://docs.oracle.com/javase/tutorial/deployment/jar/manifestindex.html

The 2nd option is easier to get going, but users will know what to do with a .exe far more often.

Note that if either approach complains that it can't find the class, make sure to set the classpath manifest attribute to match your project.

查看更多
Root(大扎)
3楼-- · 2020-01-29 01:40

Right click to your "project" in eclipse and select "export" then choose "Java->Runnable Jar File" select your project name and finish.

查看更多
beautiful°
4楼-- · 2020-01-29 01:42
forever°为你锁心
5楼-- · 2020-01-29 01:47

you can use something like Launch4j. also look at JSMooth.

Hope it helps

查看更多
神经病院院长
6楼-- · 2020-01-29 01:47

While the others mention excellent choices like creating a native executable, there is another useful method: creating a shortcut.

  • Right click your desktop, expand the "New" option, and click on "Shortcut".
  • Type "javaw.exe". Click next.
  • Name it whatever you want. Click done.
  • You'll notice the newly created shortcut on your desktop. Right click it and choose "Properties"
  • In the "Target" textfield, append "-jar path-to-your-jar.jar" where you replace "path-to-your-jar.jar" with the actual path to your jar
  • You can also now optionally change the icon to whatever icon you want

This shortcut can be pinned to the taskbar and be used from anywhere (considering you provided an absolute path to your JAR).

查看更多
我只想做你的唯一
7楼-- · 2020-01-29 01:48

you need to create exe from the java program.

Creating executable jar files

  1. First, make sure you have installed Java 1.2 or above. This facility is not available in previous versions of Java.
  2. Next, create your working java system. In general, you will want to put it into a package. For this example, I created a trivial HelloWorld application that prints out "Hello World" plus the first command line argument, and placed it into the package "psae". Therefore, the HelloWorld files (HelloWorld.class, HelloWorld.java) were located in the directory psae. I tested the system to make sure it worked before going on to the next step.
  3. In the directory in which the psae is located, created a file called "mainClass". This file contains a single line specifying where the main Class is to be found in the jar file. Note that I use the package specification. Here is the single line: Main-Class: psae.HelloWorld Note: make sure you type a carriage return after this line; some windows systems need it and will report a "Failed to load Main-Class manifest attribute" error.
  4. Next, I create a jar file called psae.jar using the "jar" command in Java2. I use the "m" command line argument to specify the manifest file mainClass, which adds information to the jar file on where the main class will be found. Here is the jar command: bertha:~ > jar cmf mainClass psae.jar psae
  5. Just for fun, and to check what's happened, I print the table of contents for the jar file I just created. Here's the command and its result: bertha:~ > jar tf psae.jar META-INF/ META-INF/MANIFEST.MF psae/ psae/HelloWorld.java psae/HelloWorld.class
  6. Having successfully created the jar file, I can now invoke java2 on it with the command line argument:

    bertha:~ > java -jar psae.jar Philip
    Hello World Philip
    
查看更多
登录 后发表回答