17

私はシェード プラグインを使用しています。

 <transformer 
        implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
        <mainClass>com.generic.App</mainClass>  
        <classPath>. ./config</classPath>                           
    </transformer>

私は得る

 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-shade-plugin:2.1:shade (default)              on project SpringThing: Unable to parse configuration of mojo org.apache.maven.plugins:maven-shade-plugin:2.1:shade for parameter transformer: Cannot find setter, adder nor field in org.apache.maven.plugins.shade.resource.ManifestResourceTransformer for 'classPath' -> [Help 1]

ドクターを見ると

http://maven.apache.org/plugins/maven-shade-plugin/apidocs/org/apache/maven/plugins/shade/resource/ManifestResourceTransformer.html

有効なマニフェスト リソースを解析できる必要がありますか? 私は clss-path Class-Path ClassPath を試しました 何も動作しません...

外部アプリ プロパティ ファイルの場所を設定するには、クラスパスが必要です。

よく知られている問題のため、アセンブリの代わりにシェード プラグインを使用しています。

http://blog.idm.fr/2009/09/maven-assembly-plugin-and-spring-namespace-handlers.html

ちなみに、私はアセンブリでこれをかなり簡単に行うことができます:(そしてそれは動作します)

 <manifestEntries>
  <Class-Path>. ./config</Class-Path>
 </manifestEntries>

マニフェスト エントリも設定できないため、maven 経由で oneJar プラグインを使用できません。(思わない?)

何か案は?

4

1 に答える 1