Java 依赖项不应指向项目目录中的文件
我查看了这个问题,看到其他人也有类似的问题,但没有一个解决方案对我有效 我对Maven是个十足的noob,但我刚刚从GitHub导入了一个项目。现在,我在使依赖项正常工作方面遇到了问题。当我清理它给我以下错误Java 依赖项不应指向项目目录中的文件,java,maven,Java,Maven,我查看了这个问题,看到其他人也有类似的问题,但没有一个解决方案对我有效 我对Maven是个十足的noob,但我刚刚从GitHub导入了一个项目。现在,我在使依赖项正常工作方面遇到了问题。当我清理它给我以下错误 SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
[INFO] Scanning for projects...
[WARNING]
[WARNING] Some problems were encountered while building the effective model for com.walrusone.skywars:skywarsreloadedplugin-api:jar:API
[WARNING] 'dependencies.dependency.systemPath' for org.bukkit:bukkit:jar should not point at files within the project directory, ${project.basedir}/lib/bukkit-1.8.6-R0.1-SNAPSHOT.jar will be unresolvable by dependent projects @ line 19, column 19
[WARNING]
[WARNING] Some problems were encountered while building the effective model for com.walrusone.skywars:skywarsreloadedplugin-v1_7_R3:jar:v1_7_R3
[WARNING] 'dependencies.dependency.systemPath' for org.bukkit:craftbukkit:jar should not point at files within the project directory, ${project.basedir}/lib/craftbukkit-1.7.9-R0.2-SNAPSHOT.jar will be unresolvable by dependent projects @ line 19, column 19
[WARNING]
[WARNING] Some problems were encountered while building the effective model for com.walrusone.skywars:skywarsreloadedplugin-v1_7_R4:jar:v1_7_R4
[WARNING] 'dependencies.dependency.systemPath' for org.bukkit:craftbukkit:jar should not point at files within the project directory, ${project.basedir}/lib/craftbukkit-1.7.10-R0.1.jar will be unresolvable by dependent projects @ line 19, column 19
[WARNING]
[WARNING] Some problems were encountered while building the effective model for com.walrusone.skywars:skywarsreloadedplugin-v1_8_R1:jar:v1_8_R1
[WARNING] 'dependencies.dependency.systemPath' for org.bukkit:craftbukkit:jar should not point at files within the project directory, ${project.basedir}/lib/craftbukkit-1.8.jar will be unresolvable by dependent projects @ line 19, column 19
[WARNING]
[WARNING] Some problems were encountered while building the effective model for com.walrusone.skywars:skywarsreloadedplugin-v1_8_R2:jar:v1_8_R2
[WARNING] 'dependencies.dependency.systemPath' for org.bukkit:craftbukkit:jar should not point at files within the project directory, ${project.basedir}/lib/craftbukkit-1.8.3.jar will be unresolvable by dependent projects @ line 19, column 19
[WARNING]
[WARNING] Some problems were encountered while building the effective model for com.walrusone.skywars:skywarsreloadedplugin-v1_8_R3:jar:v1_8_R3
[WARNING] 'dependencies.dependency.systemPath' for org.bukkit:craftbukkit:jar should not point at files within the project directory, ${project.basedir}/lib/craftbukkit-1.8.4.jar will be unresolvable by dependent projects @ line 19, column 19
[WARNING]
[WARNING] Some problems were encountered while building the effective model for com.walrusone.skywars:SkyWarsReloadedPlugin:jar:V2.8
[WARNING] 'dependencies.dependency.systemPath' for org.bukkit:bukkit:jar should not point at files within the project directory, ${project.basedir}/lib/craftbukkit-1.8.4.jar will be unresolvable by dependent projects @ line 72, column 25
[WARNING]
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING]
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING]
我相信这与最初的错误不同,它告诉我它找不到它,所以我继续下载了所有的.jar文件,并将其放在正确的位置。现在我不知道该怎么办
我遇到的另一个问题是,每当我试图编辑或添加一个类时,它的行为与普通jar文件不同。键入Main时,我不能像Main.instance.stacticMethod()那样。它就在那里
如果您需要任何其他文件,请告诉我
另外,如果有人知道关于maven的任何好的教程视频,maven的要点是您不必下载依赖项。只需克隆这个项目。您应该在根目录中看到一个文件
pom.xml
。然后进入
mvn compile
这将编译软件并在过程中下载依赖项。依赖项不存储在项目文件夹中,而是使用默认配置将它们放在~/.m2/..
中
编辑:这些警告似乎是由于项目的维护人员没有正确理解maven而引起的问题。他们似乎在项目中添加了JAR,而不是依赖项
<>下一步的编辑:例如,在代码< V1Y88R3模块中考虑文件<代码> POM.XML<代码>:它链接到基本目录中的JAR:
<dependency>
<groupId>org.bukkit</groupId>
<artifactId>craftbukkit</artifactId>
<version>1.8.4-R0.1-SNAPSHOT</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/craftbukkit-1.8.4.jar</systemPath>
<type>jar</type>
<optional>true</optional>
</dependency>
org.bukkit
这些不是错误,它们是警告,不会使构建失败。由于您正在构建从第三方导入的项目,您可以安全地忽略它们(或者告诉第三方,他们的Maven build得到了一些他们不应该忽略的警告),你有没有考虑过从5分钟的入门教程开始?@Tunaki我认为最初的开发人员没有正确设置maven@GeroldBroser我会查出来的,谢谢你的回复。它实际上是.m2
,而不是.m2e
:)谢谢你的回复!我也这么想,因为我听说Maven要做到这一点,所以我不必找到依赖项。这是Github,您可以确认。虽然您希望不安装任何库,但由于可用性原因,您可能不得不安装。这在Spring、Lombok和Java10中都发生过。仍然在寻找这个问题的解决方案…为什么Maven不支持。并非每个组织都有一个私有的Maven库