如何通过单击Windows上的图标来运行Java程序?

我编写了一个使用Java swing库的Java程序。 现在,我想通过双击Windows上的可执行文件来执行此程序,就像任何其他带有GUI的程序一样。 我怎么做?

由于它是基于Java的并且具有GUI,因此显而易见的答案是使用Java Web Start部署它。

Java Web Start(JWS)是Oracle Corporation用于直接从网络或Internet链接启动富客户端(Swing,AWT,SWT) 桌面应用程序的技术 。 它为支持Java的平台提供“一键式”安装。

JWS提供了许多吸引人的function,包括但不限于启动屏幕, 桌面集成,文件关联,自动更新(包括延迟下载和程序化更新控制),按平台,体系结构或Java版本,配置对本机和其他资源下载进行分区运行时环境(最小J2SE版本,运行时选项,RAM等),使用扩展轻松管理公共资源。

通过“桌面集成”,在支持的平台上读取桌面快捷方式和菜单项。

Windows 7上的桌面图标

右侧的2个图标( JotPad和Star Zoom Animation)都是基于Java的应用程序,使用Java Web Start安装。 由于JotPad是沙盒,因此将提示用户是否创建快捷方式。 应用程序不提供该选择。 具有更高的权限级别,因此使用IntegrationService安装/删除快捷方式和菜单项会更有意义 – 它允许应用程序。 (在提示用户之后)在运行时创建/删除它们。

有很多选择:

  1. 创建项目的可执行jar。 要使这个jar工作,你必须将javaw作为默认应用程序来打开它。
  2. 创建项目的exe。
  3. 创建一个运行jar文件的bat文件。

看看这个: 我如何将我的Java程序转换为.exe文件?

你需要从java程序创建exe。

创建可执行jar文件

  1. 首先,确保已安装Java 1.2或更高版本。 此工具在以前版本的Java中不可用。
  2. 接下来,创建您的java系统。 通常,您需要将其放入包中。 在本例中,我创建了一个简单的HelloWorld应用程序,它打印出“Hello World”加上第一个命令行参数,并将其放入包“psae”中。 因此,HelloWorld文件(HelloWorld.class,HelloWorld.java)位于目录psae中。 我测试了系统以确保它在下一步之前有效。
  3. 在psae所在的目录中,创建了一个名为“mainClass”的文件。 此文件包含一行,指定在jar文件中找到主类的位置。 请注意,我使用的是包规范。 这是单行:Main-Class:psae.HelloWorld注意:确保在此行之后键入回车符; 某些Windows系统需要它并报告“无法加载Main-Class清单属性”错误。
  4. 接下来,我使用Java2中的“jar”命令创建一个名为psae.jar的jar文件。 我使用“m”命令行参数来指定清单文件mainClass,它将信息添加到将在其中找到主类的jar文件中。 这是jar命令:bertha:〜> jar cmf mainClass psae.jar psae
  5. 只是为了好玩,并检查发生了什么,我打印刚刚创建的jar文件的目录。 这是命令及其结果:bertha:〜> jar tf psae.jar META-INF / META-INF / MANIFEST.MF psae / psae / HelloWorld.java psae / HelloWorld.class
  6. 成功创建了jar文件后,我现在可以使用命令行参数调用它上面的java2:

     bertha:~ > java -jar psae.jar Philip Hello World Philip 

有一些项目,如http://jsmooth.sourceforge.net/和http://launch4j.sourceforge.net/

你可以使用像Launch4j这样的东西 。 还看看JSMooth 。

希望能帮助到你

有两种方法。 两者都涉及将代码打包在.jar中。

第一种方法是使用Launch4j之类的工具构建一个实际的.exe文件。 它将要求您设置诸如告诉它要执行哪个类,使用哪个图标,哪个JRE正常,要使用哪些JRE参数等等。

第二个选项是使.jar本身可执行。 您可以通过向.jar添加清单来完成此操作。 清单是一个描述jar的小配置文件。 其中一个属性是Main-Class ,它定义了入口点。 换句话说,它说当用户双击文件时哪个类具有应该调用的main函数。 这是关于清单的基本教程: http : //docs.oracle.com/javase/tutorial/deployment/jar/manifestindex.html

第二个选项更容易上手,但用户会更频繁地知道如何处理.exe。

请注意,如果任一方法都抱怨它找不到类,请确保设置classpath清单属性以匹配您的项目。

虽然其他人提到了创建本机可执行文件等优秀选择,但还有另一种有用的方法:创建快捷方式。

  • 右键单击桌面,展开“新建”选项,然后单击“快捷方式”。
  • 输入“javaw.exe”。 点击下一步。
  • 无论你想要什么,都可以命 点击完成。
  • 您会注意到桌面上新创建的快捷方式。 右键单击它并选择“属性”
  • 在“目标”文本字段中,添加“-jar path-to-your-jar.jar”,将“path-to-your-jar.jar”替换为jar的实际路径
  • 您现在也可以选择将图标更改为您想要的任何图标

此快捷方式可以固定到任务栏,可以在任何地方使用(考虑到您提供了JAR的绝对路径)。

如果您有可执行jar文件,只需右键单击您的文件并将其设置为由javaw打开。 另一个选项(如果你想将参数传递给你的应用程序)是创建一个.bat文件,你可以通过java或javaw分离你的应用程序

右键单击eclipse中的“project”并选择“export”然后选择“Java-> Runnable Jar File”选择你的项目名称并完成。

似乎您想要部署并运行独立的swings应用程序。 作为一名java开发人员,您应该了解jar文件的强大function。 这些是可执行的{所以不需要创建.exe文件:)}。

以下代码将帮助您创建一个jar文件。

在命令提示符中创建jar文件

 Start Command Prompt. Navigate to the folder that holds your class files: C:\>cd \mywork Set path to include JDK's bin. For example: C:\mywork> path c:\Program Files\Java\jdk1.5.0_09\bin;%path% Compile your class(es): C:\mywork> javac *.java Create a manifest file: C:\mywork> echo Main-Class: NameOfProject >manifest.txt Create a jar file: C:\mywork> jar cvfm NameOfProject.jar manifest.txt *.class Test your jar: C:\mywork> DanceStudio.jar 

创建一个jar后,只需双击它就可以了。

您必须创建一个可执行jar文件。 为此,您只需将一个META-INF文件夹添加到jar中,然后添加一个包含两行的MANIFEST.MF文本文件:

 Manifest-Version: 1.0 Main-Class: your.package.YourMainClass 

以下是如何通过RIGHT-CLICKING运行Java程序(换句话说,从Windows资源管理器上下文菜单)。 这个方便的技巧非常适合那些需要动态测试简单程序的初学者。 适用于Win7和XP钻机。

[ ATTN:根据具体情况,您可能需要从Java文件的顶部删除package指令。]

步骤1.在您选择的文件夹内(例如,在C:\Program Files\Java )创建批处理文件(例如, RWJ.bat )。

步骤2.使用以下命令填充RWJ.bat (它们将与简单类一样正常工作,但您可以根据您的特定需要通过指定编译器/解释器开关,传递args,添加echo off来调整它们,删除暂停或其他):

 javac %1 java %~n1 pause 

第一个命令将右键单击文件的全名传递给Java编译器; 第二个剥离文件扩展名,仅为类JVM提供JVM。

步骤3.将以下密钥添加到您的注册表: HKEY_CLASSES_ROOT\*\shell\Run With Java ,然后创建其命令(默认值): C:\Program Files\Java\RWJ.bat %1

黑客注册表

步骤4.右键单击Java类并选择Run with Java选项,运行Java类。

右键单击Java类

Java类启动并运行

这里的所有都是它的。

通过指向和单击来运行Java程序的另一种方法是使用AOT编译器。 例如,GCC有一个名为GCJ的入口点,可用于将源代码编译为字节代码和特定操作系统的标准可执行文件。

最后,相反,批处理文件可以运行WSH等。