在Maven生成的jar文件中,MANIFEST.MF中缺少Main-Class属性

时间:2014-02-23 12:19:37

标签: java maven jar m2e manifest.mf

我目前正在使用Eclipse(m2e-Plugin)中的Maven进行实验,并尝试构建并运行Hello World示例项目。但是,在启动生成的jar时,没有任何反应。我检查了MANIFEST.MF,发现Main-Class属性丢失了。添加属性后,可以启动jar。

为什么Maven不添加此属性?

1 个答案:

答案 0 :(得分:1)

看看这个链接: https://maven.apache.org/shared/maven-archiver/examples/classpath.html#aAdd 您可以在那里找到如何配置您的maven项目来运行特定的类。您必须在mainClass定义的情况下添加maven-jar-plugin配置。

<build>
<plugins>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    ...
    <configuration>
      <archive>
        <manifest>
          <addClasspath>true</addClasspath>
          <mainClass>fully.qualified.MainClass</mainClass>
        </manifest>
      </archive>
    </configuration>
    ...
  </plugin>
</plugins>