JAR文件是一种打包文件格式,可以将Java类文件、相关的元数据和资源(如图片、声音等)打包成一个文件,便于分发、部署和加载。当使用-jar选项时,Java虚拟机(JVM)会期望JAR文件的根目录下包含一个名为META-INF/MANIFEST.MF的清单文件,该文件用于指定应用程序的入口点(即主类)以及其他元数据。 2. 如何在不使用-jar...
1. 在Manifest文件中指定主类 在JAR文件的META-INF目录下有一个名为MANIFEST.MF的文件,可以在这个文件中指定JAR文件的主类。在MANIFEST.MF文件中添加一行Main-Class: your.main.class,其中your.main.class是你的主类的完整路径。 2. 使用命令行参数指定主类 另一种方式是通过命令行参数来指定JAR文件的主类。在...
此时执行 java -jar MainClass.jar 提示没有主清单属性, 其实就是在 MainClass.jar 包中META-INF文件夹内MANIFEST.MF中缺少内容. 当前内容如下: Manifest-Version: 1.0 Created-By: 1.8.0_172 (Oracle Corporation) 此时我们只需要在后面添加以下内容 (com.xxx.MainClass 为启动类, 含有main方法) Main-class:...
使用-jar选项,java.exe会忽略-cp、-classpath以及环境变量CLASSPATH的参数。 java -jar 指定运行的jar,会用到打包时的生成的META-INF下的MANIFEST.MF文件,其中Main-Class指定了主类。不能再指定其他依赖jar。ava -jar myClass.jar,执行该命令时,会用到目录META-INF\MANIFEST.MF文件,在该文件中,有一个叫Main-...
jar -cvfe mytest.jar UserTest *.class(指定的主类) 如果机器上安装了独立的虚拟机,只要双击“可执行性”的jar包即可执行 java -jar jar包名 -指定要执行的jar包 如果不需要生成清单文件MANIFEST.MF,可以直接使用WinRAR或Winzip来压缩(必须压缩成zip格式),解压也可如此...
执行后总是运行指定的主方法,如果 jar 中有多个 main 方法,那么如何运行指定的 ebsHRyimain 方法呢? 用下面的命令试试看: java -classpath ***.jar ***.***.className [args] “***.***”表示“包名”; “className”表示“类名”; “[args...
jar -cvfe mytest.jar UserTest *.class(指定的主类) 如果机器上安装了独立的虚拟机,只要双击“可执行性”的jar包即可执行 java -jar jar包名 -指定要执行的jar包 如果不需要生成清单文件MANIFEST.MF,可以直接使用WinRAR或Winzip来压缩(必须压缩成zip格式),解压也可如此 ...
参数解读 java -D 是添加一个系统参数,java.ext.dirs 是一个系统参数的key,java回去该路径下寻找相关jar包,和class-path 差不多,不过java.ext.dirs可以指定一个文件夹。 注意点 需要注意的是 java.ext.dirs 本身是有值的:$JAVA_HOME/jre/lib/ext,所以使用的时候需要将其原来的值给加上去,要不然可能会报缺...
问一个小白问题:正常情况下,java打包成jar包需要在MANIFEST.MF中指定Main-Class项以便运行java -jar ***.jar时找到对应的主类。但是如果我不想在打包成jar包时指定这个类,而是想运行时指定想要运行的类,不知该如何做? java -jar HelloWorld.jar org.test.HelloWorld 如上方法运行包中的org.test.HelloWorld类时...
要指定主类来启动jar文件,我们需要在jar文件的MANIFEST.MF文件中指定Main-Class属性。Main-Class属性指定了jar文件的主类,告诉Java虚拟机(JVM)在启动时应该执行哪个类的main方法。 下面是一个示例的MANIFEST.MF文件内容: Manifest-Version: 1.0 Main-Class: com.example.Main ...