Maven-release-plugin和builder-helper插件

ron*_*onk 5 maven-plugin maven maven-release-plugin


我想我错过了一些东西..
我想要发布我的项目.
我在我的pom中添加了maven-release-plugin.另外,除了java之外我还有另一个源代码dir(称之为gen-src).当我在maven发布中做出第一步(即准备)时,一切都还可以,但是当我执行时,它不会考虑gen-src.

<plugin>
       <groupId>org.codehaus.mojo</groupId>
      <artifactId>build-helper-maven-plugin</artifactId>
      <version>1.7</version>
       <executions>
          <execution>
               <id>add-source</id>
               <phase>generate-sources</phase>

               <goals>
                  <goal>add-source</goal>
               </goals>
               <configuration>
                   <sources>
                        <source>src/main/gen_src</source>
                   </sources>
               </configuration>
          </execution>
       </executions>
    </plugin>
Run Code Online (Sandbox Code Playgroud)

我怀疑它可能与相位是生成源的事实有关.我是否需要将添加源目标附加到另一个阶段?如果有,怎么样?
我也在这里读到- 这是类似的问题,虽然我不使用flex..no答案.任何的想法?
谢谢.

MaD*_*aDa 0

生成的源类不会进入二进制 jar — 在那里您只能找到由常规源和生成源的编译产生的 .class 文件。不过,Maven 发布插件会将额外的源目录包含到源 jar 中。

不需要在任何其他阶段执行“add-source”目标;您可能会发现有用的是让 clean 插件知道它应该包含额外的目录:

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<version>2.4.1</version>
<configuration>
    <filesets>
        <fileset>
            <directory>${basedir}/src/main/gen_src</directory>
            <includes>
                <include>**/*</include>
            </includes>
        </fileset>
    </filesets>
</configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)