Maven依赖问题(MassiveCore.Factions插件)

时间:2015-01-07 20:08:25

标签: java maven pom.xml bukkit

我最近下载了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文件有几个问题,想要输入:

  1. 部分dependencies包含一个System Path,应该包含在/lib文件中以便编译,但是对于运行时,其中一些包含在同一目录中作为Factions插件本身。如果我在编译时根据POM保留文件,我可以假设一切都会在运行时运行吗?

  2. 我需要添加一个名为dependency的额外bukkit。服务器文件中有一些bukkit Jars,需要测试它是哪一个。但是,只有一个驻留在server/plugins/目录中。如果它不在该目录中,那么如果Jar文件最终将位于不同的目录中,我将如何尝试编译。

  3. MassiveCraft.MassiveCore文件中存在POM的依赖关系但不包含System Path,也不属于GitHub 下载。我有这个文件,但是如何基于这种依赖来处理这种情况?

0 个答案:

没有答案