我最近下载了MassiveCore.Factions
关闭GitHub 的源代码(已下载为ZIP
),我在Eclipse中将此项目导入为“现有Maven
项目”。我在项目中编辑了我需要的内容,但我不确定将dependencies
添加到此项目的最佳做法是什么。
目标是将编译后的Jar
文件与其他server/plugins/
文件放在目录Jar
中(此项目依赖的文件 )。这是GitHub 下载中包含的POM
:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<name>Factions</name>
<url>http://www.massivecraft.com/factions</url>
<groupId>com.massivecraft</groupId>
<artifactId>Factions</artifactId>
<version>2.7.5</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<build>
<defaultGoal>install</defaultGoal>
<finalName>Factions</finalName>
<sourceDirectory>${basedir}/src/main/java/</sourceDirectory>
<resources>
<resource>
<targetPath>.</targetPath>
<directory>${basedir}/src/main/resources/</directory>
<filtering>true</filtering>
<includes>
<include>*.yml</include>
<include>*.md</include>
<include>*.txt</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>com.massivecraft</groupId>
<artifactId>MassiveCore</artifactId>
<version>LATEST</version>
</dependency>
<dependency>
<groupId>org.dthielke</groupId>
<artifactId>HeroChat</artifactId>
<version>5.6.7</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/HeroChat-5.6.7.jar</systemPath>
</dependency>
<dependency>
<groupId>com.griefcraft</groupId>
<artifactId>LWC</artifactId>
<version>4.4.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/LWC-4.4.0.jar</systemPath>
</dependency>
</dependencies>
乍一看,我对这个POM
文件有几个问题,想要输入:
部分dependencies
包含一个System Path
,应该包含在/lib
文件中以便编译,但是对于运行时,其中一些包含在同一目录中作为Factions
插件本身。如果我在编译时根据POM
保留文件,我可以假设一切都会在运行时运行吗?
我需要添加一个名为dependency
的额外bukkit
。服务器文件中有一些bukkit Jars
,需要测试它是哪一个。但是,只有一个驻留在server/plugins/
目录中。如果它不在该目录中,那么如果Jar
文件最终将位于不同的目录中,我将如何尝试编译。
MassiveCraft.MassiveCore
文件中存在POM
的依赖关系但不包含System Path
,也不属于GitHub 下载。我有这个文件,但是如何基于这种依赖来处理这种情况?