Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java maven系统中的第三方JAR部署在哪里_Java_Maven - Fatal编程技术网

Java maven系统中的第三方JAR部署在哪里

Java maven系统中的第三方JAR部署在哪里,java,maven,Java,Maven,马文的新朋友 我已经成功地为我的应用程序创建了一个jar。我想从这个jar“java-jar foo.jar MyClass”运行应用程序,但我不知道从哪里获取(并打包)所有依赖项。maven有这样做的目标吗?如果没有,我是否使用proguard之类的工具?那么,我该如何将其纳入maven的目标中呢 提前感谢Maven将您所有的依赖项放在您的~/.m2文件夹中。(如果您使用的是maven 2) 如果您的pom.xml具备所需的一切,那么执行mvn干净安装将处理所有细节 请记住,您可以在项目中执行

马文的新朋友

我已经成功地为我的应用程序创建了一个jar。我想从这个jar“java-jar foo.jar MyClass”运行应用程序,但我不知道从哪里获取(并打包)所有依赖项。maven有这样做的目标吗?如果没有,我是否使用proguard之类的工具?那么,我该如何将其纳入maven的目标中呢


提前感谢

Maven将您所有的依赖项放在您的
~/.m2
文件夹中。(如果您使用的是maven 2)

如果您的
pom.xml
具备所需的一切,那么执行
mvn干净安装将处理所有细节


请记住,您可以在项目中执行一个
mvn依赖项:树
,以查看它的所有依赖项:p

Maven将递归下载所有依赖项,并将它们放在本地存储库中

从命令行运行java的一个棘手问题是正确地获取类路径。但是,您可以让Maven为您执行它:


这并不是你的问题的答案,但要创建一个“胖”罐,将所有依赖项打包到其中,请尝试maven complier插件:

<build>
    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
            </configuration>
        </plugin>
        <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <configuration>
                <archive>
                    <manifest>
                        <mainClass>com.stackoverflow.example.MainClass</mainClass>
                    </manifest>
                </archive>
                <descriptorRefs>
                    <descriptorRef>jar-with-dependencies</descriptorRef>
                </descriptorRefs>
            </configuration>
            <executions>
                <execution>
                    <id>make-assembly</id> <!-- this is used for inheritance merges -->
                    <phase>package</phase> <!-- bind to the packaging phase -->
                    <goals>
                        <goal>single</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

maven编译器插件
3.1
1.6
1.6
maven汇编插件
com.stackoverflow.example.MainClass
带有依赖项的jar
组装
包裹
单一的

我认为OP希望将依赖项与工件打包,以便可以执行。拥有
~/.m2
中的依赖项并没有多大帮助…谢谢大家。事实上,答案就在这里