下面通过一个例子来说明,这个例子包括2个java文件和一个mf文件:
文件1:Frame1.java
package testjar;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Frame1 extends JFrame {
JPanel contentPane;
BorderLayout borderLayout1 = new BorderLayout();
//Construct the frame
public Frame1() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
//Component initialization
private void jbInit() throws Exception {
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(borderLayout1);
this.setSize(new Dimension(400, 300));
this.setTitle("Frame Title");
}
//Overridden so we can exit when window is closed
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}
}
文件2:App.java
package testjar;
import javax.swing.UIManager;
import java.awt.*;
public class App {
boolean packFrame = false;
//Construct the application
public App() {
Frame1 frame = new Frame1();
//Validate frames that have preset sizes
//Pack frames that have useful preferred size info, e.g. from their layout
if (packFrame) {
frame.pack();
}
else {
frame.validate();
}
//Center the window
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = frame.getSize();
if (frameSize.height > screenSize.height) {
frameSize.height = screenSize.height;
}
if (frameSize.width > screenSize.width) {
frameSize.width = screenSize.width;
}
frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2);
frame.setVisible(true);
}
//Main method
public static void main(String[] args) {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch(Exception e) {
e.printStackTrace();
}
new App();
}
}
文件3:manif.mf
Main-Class: testjar.App
复制上述的三个文件到一个目录中,用命令行进入这个目录并执行 javac -d . *.java,此时会编译生成class文件,然后执行 jar -cvfm te.jar manif.mf testjar,应该回生成一个名为te.jar的jar文件,双击它,就可以看到效果了!
分享到:
相关推荐
在日常开发过程中,我们经常会遇到一个看似简单却让人头疼的问题:当Java环境变量配置正确后,尝试通过双击JAR文件来启动应用程序时却发现无法正常运行。这种现象通常发生在初次设置开发环境或是更新了Java版本之后...
2. 双击jar文件或右键选择“打开方式”,然后选择Java虚拟机的安装路径,通常是"C:\Program Files\Java\jre7\bin\javaw.exe"。 3. 由于缺少打开文件参数,需要进入注册表编辑器。在开始菜单搜索“regedit”,以管理...
然而,默认情况下,双击JAR文件并不会直接运行程序,这需要进行一些额外的配置。下面将详细介绍如何配置JAR包以实现双击运行。 首先,理解JAR文件的本质是关键。JAR文件是一个归档文件格式,由一系列压缩的文件和...
标题中的“生成可双击运行的Jar文件”指的是在Java开发中将编译好的类文件打包成一个可执行的JAR(Java Archive)文件,这样用户可以通过双击该JAR文件来直接运行Java应用程序。这一过程涉及到Java的打包工具如jar...
Win7 下双击运行 Jar 文件的方法 在 Win7 操作系统下,默认情况下无法双击运行 Jar 文件,这是因为 Win7 并未将 Jar 文件与 Java Runtime Environment(JRE)关联起来。为了解决这个问题,我们可以通过以下两种方法...
双击*.class也能运行(当然class需有main方法)?只用两个批处理就能做到。经调试,在Windows下没有问题,其它OS略做...把附件的文件java_run.bat解压后放到D:\,双击运行1.bat即可。另外,java.exe须包含在path变量中。
本文将详细介绍如何通过命令行工具在Windows环境下创建一个可双击运行的Java应用程序(.jar文件)。这种方式不仅简单快捷,而且非常适合那些希望快速部署或测试Java应用的开发者。下面将分步骤介绍整个过程,包括...
为了解决这个问题,我们需要手动修改Windows注册表中的某些条目,以确保.jar文件与正确的Java运行时环境关联。以下是一种详细的步骤: 1. **打开注册表编辑器**:首先,你需要以管理员权限运行注册表编辑器。可以...
标题中的"jar文件运行批处理"指的是创建一个批处理脚本,使得用户可以通过双击批处理文件来启动Java应用程序。批处理文件本质上是包含一系列命令的文本文件,这些命令会在DOS命令行环境下执行。 "JarExecutor.bat...
本文将详细讲解如何在Eclipse中导出JAR文件,并解决双击JAR文件后一闪而过的问题,确保程序能够正确运行。 首先,导出JAR文件的步骤如下: 1. 在Eclipse中,找到你要导出的Java项目,右键点击该项目,然后选择...
3. 双击JAR文件时,需要在系统中配置Java环境,因为操作系统会通过Java虚拟机(JVM)来执行JAR。 然而,JAR文件在Windows系统上双击运行可能需要用户先安装JRE,这给非开发人员带来了不便。这时,我们可以使用工具...
完成上述操作后,双击任何JAR文件都应能直接启动Java运行时环境,并执行该文件中的程序。如果出现问题,可以检查快捷方式的路径是否正确,以及是否成功将`.jar`文件类型与快捷方式关联。 通过上述步骤,不仅能够...
windows运行jar包指定jdk路径的脚本文件。可以不用系统的jdk运行,指定某个文件下的jdk运行jar包
在Windows系统中,安装Java Runtime Environment (JRE)后,JAR文件会被关联到`javaw.exe`,使得用户可以直接双击运行。在命令行中,也可以使用以下命令来执行JAR文件: ``` java -jar test.jar ``` 这会根据`...
在Windows中运行`jar`文件,可以使用以下命令: ```bash java -jar TestService.jar ``` 这里的`-jar`参数指示Java虚拟机加载`jar`文件并执行其中的主类。 标签“windows java”提示我们,这个话题主要关注的是在...
在日常的软件开发工作中,我们经常需要使用到`.jar`文件。这些文件是Java应用程序的一种打包形式,通常包含了编译后的Java类文件和其他资源文件。但在某些情况下,用户可能会遇到无法通过双击`.jar`文件来直接启动...
为了方便用户,开发者有时会将`.jar`文件打包成`.exe`(Windows可执行文件),使得用户只需双击即可运行程序,无需关心是否安装了Java环境。 打包Java应用到`.exe`文件的过程主要涉及到以下知识点: 1. **Java可...