如何使用maven运行构建

时间:2017-12-21 10:26:18

标签: java maven

我有以下文件夹布局(使用maven deploy plugin构建):

projectrelease
    ├── README.md
    └── com
        └── example
            └── demo
                ├── 0.0.1-SNAPSHOT
                │   ├── demo-0.0.1-20171220.161043-1.jar
                │   ├── demo-0.0.1-20171220.161043-1.jar.md5
                │   ├── demo-0.0.1-20171220.161043-1.jar.sha1
                │   ├── demo-0.0.1-20171220.161043-1.pom
                │   ├── demo-0.0.1-20171220.161043-1.pom.md5
                │   ├── demo-0.0.1-20171220.161043-1.pom.sha1
                │   ├── maven-metadata.xml
                │   ├── maven-metadata.xml.md5
                │   └── maven-metadata.xml.sha1
                ├── maven-metadata.xml
                ├── maven-metadata.xml.md5
                └── maven-metadata.xml.sha1

如何使用maven cmd运行它?

该项目是使用maven可执行jar插件构建的,它可以通过以下方式运行:

./projectrelease/com/example/demo/0.0.1-SNAPSHOT/demo-0.0.1-20171220.161043-1.jar

java -jar projectrelease/com/example/demo/0.0.1-SNAPSHOT/demo-0.0.1-20171220.161043-1.jar

我正在寻找从根文件夹运行mvn cmd,以便它将运行整个项目

2 个答案:

答案 0 :(得分:1)

  

我希望从根文件夹运行mvn cmd,以便运行整个项目

我不认为这些文件可以运行"本身"就像它们一样,没有一些额外的工具或Maven插件。另外,我实际上并不确定你的意思是"运行项目"。你的意思是编译吗?或者以某种类似于普通java执行的方式运行它?

你所拥有的是Maven存储库中编译的Artifacts的布局。

工件存储库都是特定的Maven概念。

.pom.xml文件,.sha1.md5文件都是Maven本身用来控制从存储库下载工件的元数据。 .jar文件是感兴趣的实际工件。

这些文件旨在安装到repo中,然后被其他Maven项目用作pom.xml中的依赖项。

例如:

<dependency>
    <groupId>com.example.demo</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</dependency>

这些文件可以安装在&#34;本地存储库中。这是基于文件系统的,通常位于${user.home}/.m2/

或者您可以运行存储库服务器。通用存储库服务器包括NexusArtifactoryArchiva

<击> 另一种可能性是主.jar文件是可执行的。在这种情况下,您不会使用Maven运行,而是作为普通的Java文件运行:

java -jar demo-0.0.1-20171220.161043-1.jar

<击>

答案 1 :(得分:0)

我认为您可以包含manuelly依赖jar,或者您可以使用依赖项编译项目,请参阅this