我正在尝试从控制台运行一个jar文件:
java -jar ScrumTimeCaptureMaintenence.jar
我收到了错误:
无法执行jar文件:“没有主要清单属性”
正如你所看到的,我确实有一个主文件,它可以从eclipse中运行良好:
从命令行成功运行此文件需要做什么?
答案 0 :(得分:37)
尝试运行
java -cp ScrumTimeCaptureMaintenence.jar Main
答案 1 :(得分:19)
在Eclipse中:项目上的right-click
- > Export
- > JAR file
在包含选项的最后一页(当没有Next
按钮处于活动状态时),您会看到Main class:
的设置。你需要在这里用main
方法设置这个类,默认情况下应该执行该方法(比如双击JAR文件)。
答案 2 :(得分:12)
-jar
选项仅在JAR文件是可执行JAR文件时有效,这意味着它必须具有包含Main-Class
属性的清单文件。
如果它不是可执行的JAR,那么你需要运行程序,例如:
java -cp app.jar com.somepackage.SomeClass
其中com.somepackage.SomeClass
是包含运行程序的main
方法的类。
答案 3 :(得分:7)
单击“导出”后,可以选择“Runnable JAR文件”。
您可以在“启动配置”
中指定主驱动程序
答案 4 :(得分:5)
首先从eclipse运行您的应用程序以创建启动配置。 然后按照以下步骤操作:
- 从菜单栏的文件菜单中,选择导出。
- 展开 Java 节点,然后选择 Runnable JAR文件。点击下一步。
- 在里面 Runnable JAR文件规范页面,选择要用于创建的“Java Application”启动配置 可运行的JAR。
- 在导出目标字段中,键入或单击浏览以选择位置 对于JAR文件。
- 选择适当的库 处理策略。
- (可选)您还可以创建ANT脚本以快速重新生成以前创建的可运行JAR文件。
醇>
资料来源:Eclipse.org上的Creating a New Runnable JAR File
答案 5 :(得分:4)
将Java Project导出为 Runnable Jar文件而不是Jar。
我将项目导出为 Jar ,即使Manifest存在,它也给了我错误 jar 中没有主要清单属性,即使Manifest文件存在于罐。但是,Manifest文件中只有一个条目,它没有指定要执行的Main类或函数或任何依赖的JAR
将其导出为 Runnable Jar文件后,按预期工作。
答案 6 :(得分:2)
你需要包括"主要课程" Jar中的Manisfest.mf文件中的属性
例如:Main-Class:MyClassName
第二件事,要在jar中添加Manifest文件,您可以在工作区文件夹中手动创建文件,并在Eclipse Project explorer中刷新。
导出时,Eclipse将创建一个包含清单的Jar。
干杯!!
答案 7 :(得分:0)
如果您使用的是Spring引导,则应在pom.xml
:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>