2016-11-23 9 views
1

maven-source-pluginを使用してkotlinプロジェクトのsource.jarを作成しようとしていますが、maven-source-pluginがkotlinプロジェクトでうまく動作しないようです。maven-source-pluginがkotlinで動作しない

i "はMVNソース:jarファイルを" 実行すると、出力メッセージは常に言う:ここ

[INFO] No sources in project. Archive not created. 

は、プロジェクトの私のPOMファイル内のmaven-ソース・プラグインの設定です:

<build> 
    <plugins> 

     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-source-plugin</artifactId> 
      <version>2.2.1</version> 
      <executions> 
       <execution> 
        <id>attach-sources</id> 
        <phase>package</phase> 
        <goals> 
         <goal>jar</goal> 
        </goals> 
        <configuration> 
         <attach>true</attach> 
         <includes> 
     <!-- i am trying to specify the include dir manually, but not work -->        
         <include>${project.basedir}/src/main/kotlin/*</include> 
         </includes> 
         <forceCreation>true</forceCreation> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 
    </plugins> 
</build> 

私の質問は:maven-source-pluginを使用してkotlinソースファイルを添付する方法ですか?デフォルトの達人によって

答えて

3

~~

おかげでソースがsrc/main/javaディレクトリにあることを期待しています。デフォルト以外のディレクトリを使用する場合は、build要素でそれらを指定する必要があります。

<build> 
    <sourceDirectory>src/main/kotlin</sourceDirectory> 
    <testSourceDirectory>src/test/kotlin</testSourceDirectory> 
</build> 
+0

@llya、ありがとうございます。 を追加した後、maven-source-pluginはsource.jarを生成しました。 –

+1

残念ながら、プロジェクトにJavaとKotlinの両方のソースルートがある場合、これを実行すると、ソースアーティファクトにはKotlinソースのみが含まれます。 – Alex

5

プロジェクトはJavaとKotlin(つまり、複数のソースルート)が混入していたとき、私はbuild-helper-maven-pluginを使用することを確実にするためにうまく働いたことがわかりましたJavaソースとKotlinソースの両方がビルドされたソースアーティファクトに含まれています。

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>build-helper-maven-plugin</artifactId> 
    <version>3.0.0</version> 

    <executions> 
    <execution> 
     <phase>generate-sources</phase> 
     <goals> 
     <goal>add-source</goal> 
     </goals> 
     <configuration> 
     <sources> 
      <source>src/main/kotlin</source> 
     </sources> 
     </configuration> 
    </execution> 
    </executions> 
</plugin> 
+0

Alexさん、私のプロジェクトにはkotlinコードしかありません。プロジェクトにjavaとkotlinの両方のファイルがある場合、私はあなたの提案を試みます。ありがとう –

関連する問題