2016-04-05 5 views
1

誰もポインタを持っていれば "IDEなしでビルドjar"を検索しようとしましたが、私はRTFMに満足しています。IDEなしのIntelliJ CE + Mavenパッケージ

私は約5年間でJavaに触れていないし、すべてが 少し と非常に異なるようだ。

私はIntelliJ Javaアプリケーション、標準のJavaアプリケーションをいくつかの依存関係があります。 IntelliJのコミュニティ版2016.1

pom.xmlファイルの内容:IDEのバージョンを私は成果物を作成>構築するために行くことができ、そしてそれは私がjava -jar out.jar

でアプリケーションを実行することができている私のためにjarファイルを生成します:私はIDEから「アーティファクトを構築する」を押したかのように

<?xml version="1.0" encoding="UTF-8"?> 
<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.example</groupId> 
    <artifactId>app</artifactId> 
    <version>1.0-SNAPSHOT</version> 

    <dependencies> 
     <dependency> 
      <groupId>org.yaml</groupId> 
      <artifactId>snakeyaml</artifactId> 
      <version>1.17</version> 
     </dependency> 
    </dependencies> 
</project> 

はしかし、どのように私は、コマンドラインでこのアプリケーションを構築することができますか?

答えて

1

ビルド成果物configured through the project structure settingsはIntelliJのプロジェクトファイルに格納されており、コマンドラインから自動的には利用できません。 Mavenを使用してアーティファクトを構築するには、IntelliJアーティファクト構成をMaven Shade Plugin configuration that creates an executable jarに手動で変換する必要があります。既存の成果物の構成が単純に次のようになり、プロジェクトのすべてを、含まれていることを仮定すると:

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-shade-plugin</artifactId> 
      <version>2.4.3</version> 
      <executions> 
       <execution> 
        <phase>package</phase> 
        <goals> 
         <goal>shade</goal> 
        </goals> 
        <configuration> 
         <transformers> 
          <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> 
           <mainClass>com.example.MyMainClass</mainClass> 
          </transformer> 
         </transformers> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 
    </plugins> 
</build> 

コマンドラインでmvn packageを実行し、あなたのpom.xmlであなたの</project>タグの前にそのスニペットを追加し、とMavenが生成されます。 java -jarで実行できるtargetディレクトリのapp-1.0-SNAPSHOT.jarファイルIntelliJ内から同じアーティファクトを生成する場合は、Maven Projects Tool Windowpackageライフサイクルフェーズにアクセスしてください。

関連する問題