2017-09-13 87 views
0

當我構建我的Spring引導項目時,它也會創建一個目標文件夾和 target/classes,但它不會創建任何META-INF。我也包括依賴 -maven不會爲spring引導項目創建META-INF

<plugin> 
<groupId>org.apache.maven.plugins</groupId> 
<artifactId>maven-jar-plugin</artifactId> 
<version>2.3.2</version> 
<configuration> 
    <archive> 
     <index>true</index> 
     <manifest> 
      <addClasspath>true</addClasspath> 
     </manifest> 
     <manifestEntries> 
      <mode>development</mode> 
      <url>${project.url}</url> 
      <key>value</key> 
     </manifestEntries> 
    </archive> 
</configuration> 

+0

https://maven.apache.org/guides/getting-started/index.html#How_do_I_add_resources_to_my_JAR – nullpointer

回答

0

兩種方式來做到這一點。

  1. 形式的maven-jar-plugin文檔:

請注意,下面的參數已經完全從插件配置中刪除 :

useDefaultManifestFile 

如果您需要定義你自己的MANIFEST.MF文件,你可以簡單的ieve 是通過Maven的歸檔配置就像下面這個例子:

<configuration> 
    <archive> 
     <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile> 
    </archive> 
</configuration> 

在那裏你可以把你的MANIFEST.MFsrc/main/resources/META-INF項目的文件夾中。命令

mvn clean package 

默認情況下會生成帶有src/main/resources的項目jar。

  1. usage of the plugin該票據指出

與2.1版開始,行家-JAR-插件使用Maven的歸檔 3.1.1。這意味着它不再在默認情況下在清單中創建規範和實現細節。如果你想要他們 你必須明確地說你的插件配置。

這是可以做到用:

<manifest> 
    <addDefaultImplementationEntries>true</addDefaultImplementationEntries> 
    <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> 
</manifest>