Maven 打包(.jar、-sources.jar、-javadoc.jar)

说明:

版本从新建项目开始,讲述如何将Java打包成 .jar(普通jar包)、-sources.jar(jar包的源码)、-javadoc.jar(api帮助文档)。

相关软件:

软件

版本

说明

Java

1.8

Maven与IDEA运行依赖

Maven

3.0.6

新建项目与打包所需

IDEA

IntelliJ IDEA 2019.1.3

新建项目所需


  1. 新建项目,选择 MavenJava 版本,点 Next

     
  2. 输入 GroupId(组织Id,域名的反转)、ArtifactId(坐标)、Version(版本),点 Next

     
  3. 输入 Project name(项目名,默认打包时的jar包名称)、Project location(项目保存路径),点 Finish

     
  4. 新建项目如图所示:

     
  5. 在这里我们引入 阿里巴巴 JSON 处理依赖:

     
  6. 编写几个简单的类:
    需要自己根据自己的 GroupId(组织Id,域名的反转)、ArtifactId(坐标)创建包:

     
  7. 推荐引入 org.sonatype.oss 依赖:
    如果自己配置,比较麻烦。
    发布到中央仓库所需依赖。
    <!-- https://mvnrepository.com/artifact/org.sonatype.oss/oss-parent -->
    <dependency>
        <groupId>org.sonatype.oss</groupId>
        <artifactId>oss-parent</artifactId>
        <version>9</version>
        <type>pom</type>
    </dependency>
    
    配置信息详情:https://repo1.maven.org/maven2/org/sonatype/oss/oss-parent/9/oss-parent-9.pom

    如图所示:
  8. 打包前的注意事项:
    1. 设置编码 UTF-8:

      .jar

      不设置

      存在中文字符会出现警告,不影响使用

      -source.jar

      不设置

      无影响

      -javadoc.jar

      不设置

      打包异常

          <properties>
              <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
          </properties>
    2. <packaging>jar</packaging>(新建项目时不存在,可缺省)。
       
    3. 如图所示:


       
  9. 使用 cmd 进入此文件夹(也可以使用 IDEA 中的 Terminal):

     
  10. jar包:
    未编译过(无 target 文件夹),使用:
    mvn package
    编译过(有 target 文件夹),使用:
    清理并编译:
    mvn clean package
    打包详情:


    查看到已打包的jar包:



    如果未配置:
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        </properties>
    会出现警告:

     
  11. 源码打包:
    mvn clean source:jar



    使用解压软件查看。


     
  12. -javadoc.jar(api帮助文档)打包:
     
    mvn clean javadoc:jar
    查看文件位置:



    解压 或 查看 apidocs 文件夹(区别在于 -javadoc.jar 有 META-INF 文件夹):



    查看 文档:

  13. 其他命令说明:
    mvn compile 编译类文件
    mvn install 打包后发布到本地仓库



     
发布了94 篇原创文章 · 获赞 32 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/qq_32596527/article/details/94437307