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

Maven 构建卡了很长时间,调试日志显示 [DEBUG] 我们有一个重复的元 INF/清单。中频

印辉
2023-03-14

Maven 构建卡住了,并且已经运行了很长时间

mvn净安装-X之后,我在调试模式下的不同包的日志中看到了几行类似于以下内容的行。

[DEBUG] We have a duplicate META-INF/NOTICE.txt in /Users/kimjongun/.m2/repository/commons-cli/commons-cli/1.4/commons-cli-1.4.jar

不知道如何解决这个问题,在网上找不到太多帮助,而且我对Java相当陌生。

任何帮助都很感激

共有1个答案

鲁才艺
2023-03-14

在这篇文章中,已经解释了如何使用你的清单和排除一些其他的清单文件:https://stackoverflow.com/a/38257466/2700344我只是想补充一下为什么你可能需要自己的清单文件你正在用可执行类构建新的jar,这就是你需要的< code >清单。MF for——定义应用程序的入口点,使Jar可执行并添加依赖类路径。这就是为什么你可能需要自己的清单。您可以使用maven-jar-plugin这样配置主类,它会为您创建清单:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.4</version>
    <configuration>
      <archive>
        <manifest>
        <mainClass>com.AkshayHasari.App</mainClass>
        </manifest>
      </archive>
    </configuration>
</plugin>

您也可以使用< code>filter简单地排除清单文件和shade插件配置中的一些其他文件:

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-shade-plugin</artifactId>
        <version>3.0.0</version>
        <executions>
            <execution>
                <phase>package</phase>
                <goals>
                    <goal>shade</goal>
                </goals>
                <configuration>

                    <!-- filters section excludes some stuff from the target JAR that
                        oughtn't be in there - such as JAR metadata, ant build files, text files,
                        etc. that are packaged with some dependencies, but which don't belong in
                        an uber JAR. -->
                    <filters>
                        <filter>
                            <artifact>*:*</artifact>
                            <excludes>
                                <exclude>META-INF/*</exclude>
                                <exclude>NOTICE</exclude>
                                <exclude>/*.txt</exclude>
                                <exclude>build.properties</exclude>
                            </excludes>
                        </filter>
                    </filters>
                    <!-- <finalName>${project.artifactId}-${project.version}-shaded</finalName> -->
                    <outputDirectory>${basedir}/target</outputDirectory>
                </configuration>
            </execution>
        </executions>
    </plugin>
 类似资料:
  • 我启动了一个项目,现在项目中有大约7个测试,使用执行整个测试套件已经花费了一分钟多的时间。 从附加输出(标志)中,我可以看到,对于每个测试类和方法,整个quarkus应用程序以及mongodb实例等依赖项都会重新启动。 这与quarkus文档在测试指南页面上的内容完全相反: 到目前为止,在我们的所有示例中,我们只为所有测试启动Quarkus一次。在运行第一个测试之前,Quarkus将启动,然后所有

  • 我刚拿到一台新的索尼Xperia XA,在这台设备上发现了一个奇怪的问题。它没有显示任何详细的调试日志。我尝试了Android Studio中的每个设置,使用adb logcat检查Android Studio是否只是过滤它们。我甚至使用了不同的电缆。我没主意了,请帮帮我。

  • 我有一个分布式缓存应用程序(内存绑定,由于与集群中其他节点的交互而具有网络I/O),运行在带有G1垃圾收集器的JVM1.7.0_51中。以下是JVM配置: 我把gc日志附上了几分钟。您在GC日志中看到任何问题以及JVM GC调优的任何需要吗?多谢! GC日志

  • 我有一个使用双打的简单计算,但我得到了一个意想不到的结果,我不明白为什么? 如果我输入2.99,我得到的结果是。。

  • 问题内容: 现在一段时间以来,我的单元测试花费的时间比预期的长。我已经尝试调试了几次,但是没有成功,因为延迟是在我的测试甚至开始运行之前。这影响了我在远程测试驱动开发附近做任何事情的能力(也许我的期望太高了),所以我想看看我是否可以一劳永逸地解决这个问题。 运行测试时,测试的开始与实际开始之间会有70到80秒的延迟。例如,如果我针对一个小模块运行测试(使用),我得到 1m:21中的大约1m18位于

  • 问题内容: 我想利用这个插件,但是“如果卡住就中止构建”选项没有设置任何计时器,并且该插件的说明没有说计时器有多长时间,它只是说: “如果花费太长时间,此插件可让您自动中止构建” 我的问题是多长时间?1小时,少/多? 我可以设定自己的时间吗?整个作业的计时器或批处理文件中的每一行都有该计时器吗? 问题答案: 我刚刚升级到Jenkins 1535,并且有了该插件的新升级。升级解决了我遇到的问题。现在