簡體   English   中英

運行jar時沒有主清單屬性錯誤

[英]No main manifest attribute error when running jar

我已經創建了一個Maven項目。 運行正常。 現在我想通過jar運行我的代碼。 Maven構建后,我在.m2文件夾中得到了一個jar文件。 當我嘗試使用

java -jar“ jar path”在“ jar path”中沒有獲取任何主要清單屬性。

我的POM.xml是

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.3</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>

    <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>exec-maven-plugin</artifactId>
        <version>1.2.1</version>
        <configuration>
            <mainClass>main.Application</mainClass>
        </configuration>
    </plugin>

        </plugins> 
</build>

請提出如何解決這個問題的建議。

現在我想通過jar運行我的代碼

exec-maven-plugin用於在Maven構建期間執行程序。
你不要
另外,您尚未指定任何目標。
因此,它什么也不會做。

您想要以可執行的方式打包jar。
因此,請使用maven-jar-plugin

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <configuration>
        <archive>
            <manifest>
                  <mainClass>main.Application</mainClass>
            </manifest>
        </archive>
    </configuration>
</plugin>

要創建具有pom中指定的依賴關系的JAR,請使用maven-assembly-pluginjar-with-dependencies descriptorRef

<build>
  <plugins>
    <plugin>
      <artifactId>maven-assembly-plugin</artifactId>
      <configuration>
        <archive>
          <manifest>
            <mainClass>main.Application</mainClass>
          </manifest>
        </archive>
        <descriptorRefs>
          <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
      </configuration>
    </plugin>
  </plugins>
</build>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM