java打jar包的方式,jar命令,maven

初学java编程,不知道怎么打包,或者说不知道打包的原理,本文来一探究竟

构建软件项目就像是去执行一系列任务,下载依赖,把jar包添加到classpath,把源码编译成字节码,运行测试,打包成为jar或war或者zip文件,最后是部署。

什么是jar文件?

jar除了是一个压缩文件外,它内部还额外包含了其他内容, 通过unzip解压jar包,可以发现里面包含了.class文件和META-INF/MANIFEST.MF

打jar包的几种方式
1.通过idea 的build artifacts
2. 通过maven插件打包
3. 通过jar命令打包
4. 把依赖打入jar包中
5. springboot项目打jar包

1.通过jar打包

javac 要编译的文件 -d 目标位置
jar -cvfm 命名 MENIFEST文件 *

3.maven打包

因为大部分时候是通过maven进行管理的,所以主要介绍使用maven进行打包过程。
pom(project object model)
过程:

  • mvn compile
  • mvn package 将会生成归档文件jar/war等

3.1 项目标识

你看一下,你自己的项目中如何引入依赖的,就可以知道我们需要一种唯一确定一个包的方式

元素 距离
groupId com.alibaba
artifactId dubbo
version 2.5.6

3.2 依赖管理

从远端仓库中自动下载依赖的库文件,不必手动一个个添加jar文件了
例如:


    org.springframework
    spring-core
    4.3.5.RELEASE

3.3 仓库

  • 本地仓库 默认位置 ~/.m2/repository
  • 远程仓库
    例如:

    
        JBoss repository
        http://repository.jboss.org/nexus/content/groups/public/
    

3.4 属性设置

Maven properties are value-placeholders and are accessible anywhere within a pom.xml by using the notation ${name}, where name is the property.

3.5 build

ant打包

还有一些项目是使用ant进行管理的,这就要求我们至少能够使用ant

gradle打包

在安卓项目中,gradle比maven更常见,所以也要学习一下


参考 & 扩展
http://ifeve.com/maven-1/
https://maven.apache.org/index.html
https://www.baeldung.com/maven
https://www.infoq.cn/article/2011/04/xxb-maven-7-plugin/
https://blog.csdn.net/zjf280441589/article/details/53044308

你可能感兴趣的:(java,打包,maven,java)