2016-11-23 1 views
1

Я пытаюсь использовать maven-source-plugin для создания source.jar для моего проекта kotlin, но кажется, что maven-source-plugin не работает хорошо для проекта kotlin.maven-source-plugin не работает для kotlin

, когда я запускаю «источник МВН: баночку», выходное сообщение всегда говорит:

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

здесь конфигурация 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> 

мой вопрос: как подключить исходные файлы kotlin с помощью maven-source-plugin?

благодарит ~~

ответ

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 и Котлин (то есть кратные корни источника), я обнаружил, что с помощью 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, в моих проектах есть только котлинские коды. я попробую ваше предложение, когда в проекте есть файлы java и kotlin. благодаря –

 Смежные вопросы

  • Нет связанных вопросов^_^