Maven 2 Maven从编译和运行测试中排除目录

Maven 2 Maven从编译和运行测试中排除目录,maven-2,maven-compiler-plugin,Maven 2,Maven Compiler Plugin,我正在尝试为我的代码设置我的第一个maven项目,可以在这里找到: 我有3个pom文件: 我想从编译和测试中排除以下目录中的所有文件: jorlib-core/src/test/java/org/jorlib/frameworks/columnGeneration/tsp 注意测试部分。根据这一点,我可以将maven编译器插件与excludes和testExcludes一起使用。所以我添加了插件: <plugin> <groupId>org.apache.maven.

我正在尝试为我的代码设置我的第一个maven项目,可以在这里找到:

我有3个pom文件:

我想从编译和测试中排除以下目录中的所有文件:

jorlib-core/src/test/java/org/jorlib/frameworks/columnGeneration/tsp
注意测试部分。根据这一点,我可以将maven编译器插件与excludes和testExcludes一起使用。所以我添加了插件:

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
    <source>1.8</source>
    <target>1.8</target>
    <excludes>
      <exclude>**/org/jorlib/frameworks/columnGeneration/tsp/**</exclude>
      <exclude>**/org/jorlib/frameworks/columnGeneration/tsp/**/*</exclude>
      <exclude>**/src/test/java/org/jorlib/frameworks/**/*</exclude>
      <exclude>**/src/test/java/org/jorlib/frameworks/columnGeneration/tsp/cg/master/Master.java</exclude>
      <exclude>**/src/test/java/org/jorlib/frameworks/columnGeneration/tsp/cg/master/TSPMasterData.java</exclude>
      <exclude>**/src/test/java/org/jorlib/frameworks/columnGeneration/tsp/cg/ExactPricingProblemSolver.java</exclude>
      <exclude>**/src/test/java/org/jorlib/frameworks/columnGeneration/tsp/cg/master/cuts/SubtourInequalityGenerator.java</exclude>
      <exclude>**/src/test/java/org/jorlib/frameworks/columnGeneration/tsp/cg/master/cuts/SubtourInequalityGenerator.java</exclude>
      <exclude>**/src/**test**/java/org/jorlib/frameworks/columnGeneration/tsp/**/*</exclude>
      <exclude>**/src/**test**/java/org/jorlib/frameworks/columnGeneration/tsp/**</exclude>
      <exclude>**/src/**test**/java/org/jorlib/frameworks/columnGeneration/tsp/*</exclude>
    </excludes>
    <testExcludes>
      <exclude>**/frameworks/**</exclude>
      <exclude>**/org/jorlib/frameworks/columnGeneration/tsp/**</exclude>
      <exclude>**/org/jorlib/frameworks/columnGeneration/tsp/**/*</exclude>
      <exclude>/org/jorlib/frameworks/**</exclude>
      <exclude>**/src/test/java/org/jorlib/frameworks/*</exclude>
      <exclude>**/src/test/java/org/jorlib/frameworks/**/*</exclude>
      <exclude>**/src/test/java/org/jorlib/frameworks/columnGeneration/tsp/cg/master/Master.java</exclude>
      <exclude>**/src/test/java/org/jorlib/frameworks/columnGeneration/tsp/cg/master/TSPMasterData.java</exclude>
      <exclude>**/src/test/java/org/jorlib/frameworks/columnGeneration/tsp/cg/ExactPricingProblemSolver.java</exclude>
      <exclude>**/src/test/java/org/jorlib/frameworks/columnGeneration/tsp/cg/master/cuts/SubtourInequalityGenerator.java</exclude>
      <exclude>**/src/test/java/org/jorlib/frameworks/columnGeneration/tsp/cg/master/cuts/SubtourInequalityGenerator.java</exclude>
      <exclude>**/src/**test**/java/org/jorlib/frameworks/columnGeneration/tsp/**/*</exclude>
      <exclude>**/src/**test**/java/org/jorlib/frameworks/columnGeneration/tsp/**</exclude>
      <exclude>**/src/**test**/java/org/jorlib/frameworks/columnGeneration/tsp/*</exclude>
    </testExcludes>
</configuration>

有没有关于如何处理这个问题的建议

解决方案似乎很简单。以下代码已足够,请注意测试用例排除:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.3</version>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
        <testExcludes>
          <exclude>**/org/jorlib/frameworks/columnGeneration/tsp/**/*</exclude>
        </testExcludes>
    </configuration>
</plugin>
这对我来说不起作用,因为在代码的其他地方,我有一个单独的import语句,它从我想要排除的目录中导入了一个文件。尽管没有使用这个特定的文件,但我只是忘记了删除import语句,import语句本身就导致maven编译排除的目录。让我想知道为什么maven没有检测到这种“冲突”?尽管如此,我还是很高兴地告诉大家,我的问题已经解决了

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.3</version>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
        <testExcludes>
          <exclude>**/org/jorlib/frameworks/columnGeneration/tsp/**/*</exclude>
        </testExcludes>
    </configuration>
</plugin>