CentOS Java编译后如何打包发布

195
2025/3/18 0:31:40
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在 CentOS 上编译并打包发布 Java 应用程序,通常涉及以下几个步骤:

  1. 编写 Java 代码:确保你的 Java 代码已经编写完成,并且可以在本地环境中编译通过。

  2. 编译 Java 代码:使用 javac 命令编译 Java 源代码文件。例如:

    javac -d bin src/com/example/Main.java
    

    这会将编译后的类文件放在 bin 目录下。

  3. 创建 JAR 文件:使用 jar 命令将编译后的类文件打包成 JAR 文件。例如:

    jar cvfe myapp.jar com.example.Main -C bin .
    

    这会创建一个名为 myapp.jar 的 JAR 文件,并指定 com.example.Main 为应用程序的入口点。

  4. 添加依赖库(如果有):如果你的应用程序依赖于外部库,你需要将这些库包含在 JAR 文件中,或者创建一个可执行的 JAR 文件,其中包含所有依赖库。可以使用 maven-assembly-pluginmaven-shade-plugin 来实现这一点。

    • 使用 Maven Assembly Plugin: 在 pom.xml 中添加以下配置:
      <build>
          <plugins>
              <plugin>
                  <artifactId>maven-assembly-plugin</artifactId>
                  <version>3.3.0</version>
                  <configuration>
                      <archive>
                          <manifest>
                              <mainClass>com.example.Main</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>
      
      然后运行:
      mvn clean package
      
      这会在 target 目录下生成一个包含所有依赖库的 JAR 文件,例如 myapp-jar-with-dependencies.jar
  5. 部署 JAR 文件:将生成的 JAR 文件复制到目标服务器上。可以使用 scp 命令进行文件传输:

    scp myapp.jar user@remotehost:/path/to/deploy
    
  6. 运行 JAR 文件:在目标服务器上运行 JAR 文件:

    java -jar /path/to/deploy/myapp.jar
    

通过以上步骤,你可以在 CentOS 上编译并打包发布 Java 应用程序。根据你的具体需求,可能还需要进行一些额外的配置和优化。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: centos云主机环境配置的方法是什么