当前位置: 首页 > 知识库问答 >
问题:

Maven 着色插件运行两次

薛华容
2023-03-14

我的问题是maven-shade-plugin似乎在我的项目上运行了两次。

我的父pom文件在这里:http://pastebin.com/EsYaCbzJ(在这里发布太长了)

该项目的pom(好吧,在这种情况下是模块)给我带来麻烦在这里:http://pastebin.com/jdyGXGpL

我正在尝试在 MySQL jdbc 驱动程序中着色。

这是我希望使用的pom.xml代码块。

<build>
....
  <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>
          <shadedArtifactAttached>true</shadedArtifactAttached>
          <createDependencyReducedPom>false</createDependencyReducedPom>
          <relocations>
            <relocation>
              <pattern>mysql</pattern>
              <shadedPattern>mysql.shaded</shadedPattern>
            </relocation>
          </relocations>
          <artifactSet>
            <excludes>
              <exclude>com.fakeneth.mydynamicsql:mydynamicsql-core</exclude>
              <exclude>junit:junit</exclude>
            </excludes>
          </artifactSet>
        </configuration>
      </execution>
    </executions>
  </plugin> 
...
</build>

现在,当我试图构建项目时,问题出现了(或似乎出现了)。我使用两个pom.xml中看到的东西来构建它。

出于某种原因,以下行显示了两次,前后一点点;

[INFO]---maven-shade-plugin: 2.4.3:阴影(默认)@myDynamicsql-独立---

[信息]从阴影罐中排除 com.fakeneth.mydynamicsql:mydynamicsql-core:jar:0.0.1-SNAPSHOT。

[信息]在阴影jar中包含mysql:mysql-connector-java:jar:5.1.38。

[信息]附加着色伪影。

下面一行也连续显示两次;

[INFO] Installing C:\Users\cneth_000\Documents\EclipseWorkspace\mydynamicsql-parent\mydynamicsql-standalone\target\mydynamicsql-standalone-0.0.1-SNAPSHOT-shaded.jar to C:\Users\cneth_000\.m2\repository\com\fakeneth\mydynamicsql\mydynamicsql-standalone\0.0.1-SNAPSHOT\mydynamicsql-standalone-0.0.1-SNAPSHOT-shaded.jar

以下是构建此项目时打印内容的完整日志:http://pastebin.com/L3RQaUvv

这是预期的行为吗?谢谢

共有1个答案

卓云
2023-03-14

我解决了我的问题。

当我构建我的项目时,我正在构建我的父项目。事实证明,单独构建每个模块不会导致我的所有插件执行两次。出于某种原因,构建父项目导致每个模块都要构建两次。

 类似资料:
  • 我有一个Selenium-Java-TestNG-Maven套件。我正在通过pom XML运行这个。但是maven在testng xml中运行了两次测试。但是,当我运行与TestNG套件相同的TestNG xml时,它的行为是正常的,也就是说,它只像预期的那样运行一次TestNG xml中的测试。 `http://maven.apache.org/xsd/maven-4.0.0.xsd“>4.0.

  • 这应该是很容易的,但我遇到了奇怪的行为从maven安装插件。 我需要重新包装一些常见的依赖到我的项目,以避免依赖冲突。 阴影插件正确地完成了它的工作,并产生了阴影工件com.myproject-myproject. jar和依赖减少的pom文件。但是然后安装插件安装了原始工件(没有依赖项),而不是阴影。 此外,在安装插件问题之前,我的CI服务器(jenkins)构建了这个项目,并正确地发布了阴影工

  • 问题内容: 我想为jTable中的特定行着色..i通过使用此代码对列进行了处理, 我使用上面的代码调用 但是我想对jTable中的行执行相同的操作。对于行,则没有getColumnModel()或getColumn()。那么替代方法是什么呢?我正在使用Java Swing在Netbeans中进行此操作。 问题答案: 这是有关如何组合列颜色和行颜色的示例。您基本上是在TableCellRendere

  • 问题内容: 当终端/控制台测试运行以红色或绿色文本显示其输出时,我喜欢它。似乎很多可用于Go的测试库都具有此功能。但是,我只想使用Go随附的默认测试包。有没有一种方法可以用红色和绿色对输出进行着色? 问题答案: 您可以为此创建包装外壳脚本,并使用颜色转义序列对其进行着色。这是Linux上的一个简单示例(我不确定在Windows上的外观如何,但我想有一种方法.. :))

  • 我有一个maven(多模块)项目,为JBoss AS 7.1.x创建一些WAR和EAR文件。 出于一个目的,我需要将一个模块的一个生成的EAR文件部署到一个新的JBoss实例并运行它,对它调用一些REST web服务调用并停止JBoss。然后,我需要将这些调用的结果打包并写入数据库。 目前,我正在尝试使用CARGO和专家蚂蚁运行插件来执行此任务。 不幸的是,我不能让三个(maven、ant run

  • 我正在使用maven运行我的集成测试,这些测试在TestNG套件中。在Eclipse下运行套件时--我的测试套件运行成功。当运行“mvn verify”来运行我的集成测试时,我看到failsafe插件配置调试打印,其中包括suite.xml文件和我编译的类的正确路径,但它没有执行我的测试(构建过程成功完成)。 我尝试过运行相同的pom配置,但是使用了surefire插件而不是failsafe插件,