2017-12-18 5 views
0

私はorg.apache.commons.lang3を必要とするEJBプロジェクトを持っています。私は私のプロジェクト]> [エクスポート]> [EJB JARファイル、依存関係をMANIFEST.MF私の依存関係が私のmanifest.mfに表示されないのはなぜですか?

に記載されていない場合は

私のpom.xmlに

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
<modelVersion>4.0.0</modelVersion> 
<groupId>com.kable.newsstand.kdsejb</groupId> 
<artifactId>kds-ejb</artifactId> 
<version>1.0.0-SNAPSHOT</version> 
<parent> 
    <groupId>com.kable.maven</groupId> 
    <artifactId>kable-super-pom</artifactId> 
    <version>[0.1,1.0)</version> 
</parent> 
<dependencies> 
    .... 
    <dependency> 
     <groupId>org.apache.commons</groupId> 
     <artifactId>commons-lang3</artifactId> 
     <version>3.5</version> 
    </dependency> 
</dependencies> 
<build> 
    <sourceDirectory>ejbModule</sourceDirectory> 
    <resources> 
     <resource> 
      <directory>ejbModule</directory> 
      <excludes> 
       <exclude>**/*.java</exclude> 
      </excludes> 
     </resource> 
    </resources> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-source-plugin</artifactId> 
      <executions> 
       <execution> 
        <id>attach-sources</id> 
        <goals> 
         <goal>jar-no-fork</goal> 
        </goals> 
       </execution> 
      </executions> 
     </plugin> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-jar-plugin</artifactId> 
      <version>2.6</version> 
      <configuration> 
       <archive> 
        <addMavenDescriptor>false</addMavenDescriptor> 
       </archive> 
      </configuration> 
     </plugin> 
     <plugin> 
      <artifactId>maven-ejb-plugin</artifactId> 
      <version>3.0.0</version> 
      <configuration> 
       <ejbVersion>3.1</ejbVersion> 
       <archive> 
        <manifestEntries> 
         <Dependencies>org.apache.commons.lang3</Dependencies> 
        </manifestEntries> 
       </archive> 
      </configuration> 
     </plugin> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <configuration> 
       <source>1.7</source> 
       <target>1.7</target> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 
</project> 

を持つマニフェスト-バージョン:内蔵することを1.0
:ブレイ
ビルドJDK:9.0.1
作成したバイ: - > manifestEntries - > DEPのEclipse

用のMavenの統合は、私は、Mavenの-のejb-プラグイン
私はまた、アーカイブを含め が含まれていますプラグインのエンドエンティティノード

+0

さらに完全なpomファイルを表示してください... Eclipseの代わりに 'mvn clean package'を使ってコマンドラインで実行してください。 – khmarbaise

+0

ほとんどのpom.xmlで更新されました。私は長さを調整するために、依存関係のほとんどを切り捨てました。 –

答えて

0

[OK]を、khmarbaiseの応答は、いくつかのものを見て私をリードし、私の結果は次のとおりです。

pom.xmlのmaven-ejb-pluginの設定を次のように変更します。

 <plugin> 
      <artifactId>maven-ejb-plugin</artifactId> 
      <version>3.0.0</version> 
      <configuration> 
       <jarName>kdsSession</jarName> <!-- I need a different jar name --> 
       <outputDirectory>${basedir}</outputDirectory> <!-- I want my jar in the root, not the /target --> 
       <ejbVersion>3.1</ejbVersion> 
       <archive> 
        <manifestEntries> 
         <Dependencies>org.apache.commons.lang3</Dependencies> 
        </manifestEntries> 
       </archive> 
      </configuration> 
     </plugin> 

次に、目的のためにejb:ejbを使用して新しい実行構成「Run as maven build ...」を作成しました。

新しい[実行時]設定を使用して、[エクスポート] - > [EJB Jar]の代わりにejb.jarをビルドします。

関連する問題