java-jar中没有主清单属性
时间: 2025-04-18 17:46:40 浏览: 57
### 如何在 Java JAR 文件中设置主清单属性
当遇到 `java -jar` 命令执行失败并提示缺少主清单属性的情况时,这通常意味着 Java 虚拟机无法找到用于启动应用程序的主类[^1]。为了确保程序能够顺利运行,需要正确配置 JAR 文件中的 MANIFEST.MF 文件。
#### 方法一:通过命令行工具手动添加 Main-Class 属性
可以利用 `-C` 参数配合 `jar` 工具来更新现有的 JAR 文件:
```bash
$ jar ufe myapp.jar com.example.MainClass
```
这条指令会自动编辑已有的 JAR 文件 (`myapp.jar`) 并为其添加必要的 Manifest 条目,其中 `com.example.MainClass` 是包含 `public static void main(String[] args)` 方法的具体路径名[^3]。
#### 方法二:使用 IDE 配置
大多数现代集成开发环境 (IDE),比如 IntelliJ IDEA 或 Eclipse,在创建可执行 JAR 时提供了图形界面选项来自定义清单条目。只需按照向导指示操作即可完成设置[^2]。
#### 方法三:Maven 插件方式
对于基于 Maven 构建的应用程序来说,可以在项目的 pom.xml 中加入 maven-jar-plugin 插件的相关配置片段如下所示:
```xml
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<archive>
<manifest>
<!-- 替换为自己的全限定类名 -->
<mainClass>com.example.MainClass</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
```
之后再次构建项目将会自动生成带有正确 manifest 设置的新版本 JAR 文件[^4]。
成功设置了主清单属性后,就可以正常使用 `java -jar your-application.jar` 启动应用了。
阅读全文
相关推荐


















