温馨提示×

Linux里Java如何打包

小樊
86
2025-02-16 00:26:25
栏目: 编程语言
Linux服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Linux系统中,使用Java打包应用程序通常涉及将Java源代码编译成字节码(.class文件),然后将这些字节码打包成一个可执行的JAR文件。以下是详细步骤:

1. 编写Java代码

首先,确保你的Java代码已经编写完成并保存在适当的目录结构中。例如,假设你的项目结构如下:

myapp/
├── src/
│   └── com/
│       └── example/
│           └── Main.java
└── lib/
    └── some-library.jar

2. 编译Java代码

使用javac命令编译Java源代码。你需要指定源代码目录和类路径(包括任何外部库)。

cd myapp
javac -d bin -cp lib/some-library.jar src/com/example/Main.java
  • -d bin:指定编译后的.class文件存放的目录。
  • -cp lib/some-library.jar:指定类路径,包括任何外部库。
  • src/com/example/Main.java:指定要编译的Java源文件。

编译完成后,你会在bin目录下看到生成的.class文件。

3. 创建JAR文件

使用jar命令将编译后的.class文件打包成一个JAR文件。你需要指定JAR文件的名称、主类(包含main方法的类)以及类路径。

jar cfe myapp.jar com.example.Main -C bin .
  • c:创建新的归档文件。
  • f:指定归档文件名。
  • e:指定应用程序的入口点(主类)。
  • myapp.jar:生成的JAR文件名。
  • com.example.Main:主类的全限定名。
  • -C bin .:切换到bin目录并包含所有内容。

4. 运行JAR文件

使用java命令运行JAR文件。

java -jar myapp.jar

5. 打包成可执行的JAR文件(可选)

如果你希望JAR文件可以直接运行,而不需要在外部指定类路径,可以将所有依赖库打包到JAR文件中。这可以通过创建一个包含所有依赖的“胖JAR”来实现。

使用Maven

如果你使用Maven作为构建工具,可以配置pom.xml文件来打包成可执行的JAR文件。

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>3.2.0</version>
            <configuration>
                <archive>
                    <manifest>
                        <addClasspath>true</addClasspath>
                        <classpathPrefix>lib/</classpathPrefix>
                        <mainClass>com.example.Main</mainClass>
                    </manifest>
                </archive>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <version>3.1.2</version>
            <executions>
                <execution>
                    <id>copy-dependencies</id>
                    <phase>package</phase>
                    <goals>
                        <goal>copy-dependencies</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${project.build.directory}/lib</outputDirectory>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

然后运行以下命令来打包:

mvn clean package

生成的JAR文件将位于target目录下,并且可以直接运行。

通过以上步骤,你可以在Linux系统中使用Java打包应用程序。

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

推荐阅读:在go里打包linux的方法

0