Maven 打包可运行 jar

使用 maven 将项目打包成可运行 jar 注意两点

1. 复制项目依赖的其他 jar

打包后, 再运行如下命令将依赖的 jar 复制到 target/lib 目录

mvn dependency:copy-dependencies -DoutputDirectory=target/lib

2. 在生成的 jar 包的 META-INF\MANIFEST.MF 文件指定 Main Class 的信息

在 pom.xml 文件加入

<build>
    <plugins>
        <plugin>
	    <groupId>org.apache.maven.plugins</groupId>
	    <artifactId>maven-jar-plugin</artifactId>
	    <configuration>
		<archive>
    		    <manifest>
    		        <mainClass>org.Main</mainClass>
    		        <addClasspath>true</addClasspath>
    		        <classpathPrefix>lib/</classpathPrefix>
    		</manifest>
		</archive>
	    </configuration>
	</plugin>
    <plugins>
</build>

其中

<mainClass>org.Main</mainClass> 指定了 main 方法所在的类

<classpathPrefix>lib/</classpathPrefix> 指定了 classpath, 运行时只需要  java -jar xxx.jar 命令,不需要用 -cp 指定

时间: 2024-10-12 11:12:30

Maven 打包可运行 jar的相关文章

【Maven学习】Maven打包生成普通jar包、可运行jar包、包含所有依赖的jar包

http://blog.csdn.net/u013177446/article/details/54134394 ****************************************************** 使用maven构建工具可以将工程打包生成普通的jar包.可运行的jar包,也可以将所有依赖一起打包生成jar: 一.普通的jar包 普通的jar包只包含工程源码编译出的class文件以及资源文件,而不包含任何依赖:同时还包括pom文件,说明该包的依赖信息: 在工程pom文件下

Vcenter数据采集之maven打包可执行jar血历史

技术点:spring加载xsd过程: http://blog.csdn.net/bluishglc/article/details/7596118 案发背景: 1.一个使用maven管理的普通项目(vcenter-collector :关于Vcenter数据采集) 2.项目主要技术: java + mybatis(基于接口形式)+其他 3.项目中有一个非maven仓库的jar包:vijava(做vcenter数据采集的),在项目中以system方式引用 (该jar放在${project.base

maven打包可执行jar包

创建一个文件夹haha,里面包含三项 Haha.java Main.java pom.xml pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:sch

maven 打包可执行jar 问题小结

最近项目用到maven,完成后要将项目打包成可执行的jar,在网上搜了很多打包方法,但总有个个别问题在那里 pom配置文件增加下面配置,执行mvn clean package <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configur

Spring Boot Maven 打包可执行Jar文件

本文转载自:http://blog.csdn.net/smilecall/article/details/56288972 Maven pom.xml 必须包含 <packaging>jar</packaging> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-mave

Spring Boot Maven 打包可执行Jar文件!

Maven pom.xml 必须包含 [plain] view plain copy <packaging>jar</packaging> [html] view plain copy <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</ar

[转] maven打包可运行的fat-jar的简单方法

[From] https://blog.csdn.net/tearsky253/article/details/75948721 问题 在使用"mvn package"命令编译application之后,生成的.jar文件不能直接被"java -jar"命令运行,一般都是因为: 1. Manifest中没有主清单属性. 2. 依赖项在.jar文件中不存在. 这两个问题可以通过在pom.xml中增加build plugin来解决. 方法1 使用maven-assemb

IDEA如何打包可运行jar的一个问题。

转自http://bglmmz.iteye.com/blog/2058785 背景: 有时候,我们会用IDEA来开发一些小工具,需要打成可运行的JAR包:或者某些项目不是WEB应用,纯粹是后台应用,发布时,也需要打成可运行的JAR包.并且,如果依赖第三方jar时,又不希望第三方jar也打入最终的可运行jar包,并且还希望,组织下目录结构(如把第三方jar文件,放到最终可运行jar包的并行目录lib下) 开发环境 OS: Windows 8.1 JDK: 1.7.0 开发工具: IntelliJ

IDEA如何打包可运行jar,外部引用jar包版

背景: 有时候,我们会用IDEA来开发一些小工具,需要打成可运行的JAR包:或者某些项目不是WEB应用,纯粹是后台应用,发布时,也需要打成可运行的JAR包.并且,如果依赖第三方jar时,又不希望第三方jar也打入最终的可运行jar包,并且还希望,组织下目录结构(如把第三方jar文件,放到最终可运行jar包的并行目录lib下) 开发环境 OS: Windows 8.1 JDK: 1.7.0 开发工具: IntelliJ IDEA 13.1.1 步骤: 1. 选中Java项目工程名称,在菜单中选择