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

xml API依赖的许可证问题

慕胡媚
2023-03-14

问题:我的项目的所有依赖项都已解决。在将所有项目JAR移动到/lib文件夹并在本地使用Jetty运行之后,我发现以下错误。

Error:
Internal error (java.io.IOException): Error occurred during processing zip file C:\Users\Dev.User\.m2\repository\xml-apis\xml-apis\1.4.01\xml-apis-1.4.01.jar: C:\dev\testProject\testProject-web\target\testProject-web-1.0-SNAPSHOT\WEB-INF\classes\license\LICENSE (The system cannot find the path specified)
java.io.IOException: Error occurred during processing zip file C:\Users\Dev.User\.m2\repository\xml-apis\xml-apis\1.4.01\xml-apis-1.4.01.jar: C:\dev\testProject\testProject-web\target\testProject-web-1.0-SNAPSHOT\WEB-INF\classes\license\LICENSE (The system cannot find the path specified)
    at org.jetbrains.jps.incremental.artifacts.instructions.JarBasedArtifactRootDescriptor.processEntries(JarBasedArtifactRootDescriptor.java:64)
    at org.jetbrains.jps.incremental.artifacts.instructions.JarBasedArtifactRootDescriptor.copyFromRoot(JarBasedArtifactRootDescriptor.java:83)
    at org.jetbrains.jps.incremental.artifacts.IncArtifactBuilder.build(IncArtifactBuilder.java:146)
    at org.jetbrains.jps.incremental.artifacts.IncArtifactBuilder.build(IncArtifactBuilder.java:35)
    at org.jetbrains.jps.incremental.IncProjectBuilder.buildTarget(IncProjectBuilder.java:1211)
    at org.jetbrains.jps.incremental.IncProjectBuilder.runBuildersForChunk(IncProjectBuilder.java:1114)
    at org.jetbrains.jps.incremental.IncProjectBuilder.buildTargetsChunk(IncProjectBuilder.java:1247)
    at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunkIfAffected(IncProjectBuilder.java:1066)
    at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunks(IncProjectBuilder.java:832)
    at org.jetbrains.jps.incremental.IncProjectBuilder.runBuild(IncProjectBuilder.java:419)
    at org.jetbrains.jps.incremental.IncProjectBuilder.build(IncProjectBuilder.java:183)
    at org.jetbrains.jps.cmdline.BuildRunner.runBuild(BuildRunner.java:132)
    at org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:301)
    at org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:132)
    at org.jetbrains.jps.cmdline.BuildMain$MyMessageHandler.lambda$channelRead0$0(BuildMain.java:219)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.io.FileNotFoundException: C:\dev\testProject\testProject-web\target\testProject-web-1.0-SNAPSHOT\WEB-INF\classes\license\LICENSE (The system cannot find the path specified)
    at java.base/java.io.FileOutputStream.open0(Native Method)
    at java.base/java.io.FileOutputStream.open(FileOutputStream.java:298)
    at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:237)
    at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:187)
    at org.jetbrains.jps.incremental.artifacts.instructions.JarBasedArtifactRootDescriptor$1.process(JarBasedArtifactRootDescriptor.java:96)
    at org.jetbrains.jps.incremental.artifacts.instructions.JarBasedArtifactRootDescriptor.processEntries(JarBasedArtifactRootDescriptor.java:58)
    ... 17 more

Please perform full project rebuild (Build | Rebuild Project)

这表明找不到许可证。依赖项本身包含许可证url(我已经检查了pom文件it依赖项),我已经检查了pom(内部依赖项)文件中提到的标记中给出的url,它是公共的。

依赖URL:https://mvnrepository.com/artifact/xml-apis/xml-apis/1.4.01

POM文件:https://repo1.maven.org/maven2/xml-apis/xml-apis/1.4.01/xml-apis-1.4.01.pom

许可证网址:https://www.apache.org/licenses/LICENSE-2.0.txt

尝试:

  1. 删除. m2文件夹和maven更新。
  2. 无效缓存并重启

共有1个答案

杜思远
2023-03-14

这不是码头问题,这里不涉及。

Jetty也不依赖于xml-api-1.4.01。jar

首先,修复你的构建,你在其中做了一些非常尴尬的事情。

您的依赖项不应解压缩到webapp的WEB-INF/classes目录中(这是stacktrace中指出的)。

只需将它们复制到您的WEB-INF/lib目录,而无需尝试解包。

这应该发生在您的${project.basedir}/Target/${project.build.finalName}/(目录)被打包到${project.basedir}/Target/${project.build.finalName}. war(在maven的包阶段

 类似资料:
  • Flask 由一个三条款的 BSD 许可证许可。基本上可以认为:你可以用它做任何事情, 只要版权在 Flask 的支持范围内,条款不能被修改,并且提供免责声明。 此外,你不可以在没有书面同意的情况下使用作者的名字来推广衍生作品。 完整的许可证可以在下面找到( Flask License )。对于文档和艺术作品, 使用不同的许可证。 作者 Flask is written and maintaine

  • Akka License This software is licensed under the Apache 2 license, quoted below. Copyright 2009-2014 Typesafe Inc. <http://www.typesafe.com> Licensed under the Apache License, Version 2.0 (the "Lice

  • 主要内容:排除依赖,可选依赖,排除依赖 VS 可选依赖 我们知道 Maven 依赖具有传递性,例如 A 依赖于 B,B 依赖于 C,在不考虑依赖范围等因素的情况下,Maven 会根据依赖传递机制,将间接依赖 C 引入到 A 中。但如果 A 出于某种原因,希望将间接依赖 C 排除,那该怎么办呢?Maven 为用户提供了两种解决方式:排除依赖(Dependency Exclusions)和可选依赖(Optional Dependencies)。 排除依赖

  • 我的应用程序中使用了弹性城堡依赖项,我希望在pom.xml文件中排除此依赖项。即使从pom文件中删除此依赖项,它仍然出现在m2存储库文件夹中。我的应用程序是Spring-MVC 5框架,运行在Tomcat版本9上。部署时有两个不同版本的“bcprov”。我需要从pom.xml文件中排除bcprov-jdk14和bcprov-jdk15on。 下面是pom文件中的依赖关系。 我还尝试了另一个链接的排

  • 我有一个有剧本依赖的用例。我有一组主机在我所有的机器上启动应用程序,然后另一组主机是实际的机器。 现在我的问题是,ansible是否有可能只有在成功执行第一个剧本并启动应用程序时才运行第二个剧本(比方说更新一个包)。我在这里遇到的问题是,尽管第一个剧本不成功,但第二个剧本运行,应用程序没有启动 在这里,我从一台远程机器启动应用程序,该机器对我的所有机器都有权限,更新包需要在每台机器上完成。因此,它

  • 当我试图使用它时,我从提卡那里得到了所有这些警告: 2018年2月24日9:24:35。阿帕奇。蒂卡。配置。InitializableProblemHandler$3 handleInitializableProblem警告:未加载JBIG2ImageReader。jbig2文件将被忽略,请参见https://pdfbox.apache.org/2.0/dependencies.html#jai-