如何从我的Java类构建一个库文件(JAR文件)?

3

我已经创建了一些支持性的Java类来帮助和加速开发。现在我想构建一个JAR文件(类似于Hibernate JAR文件),收集这些Java类。然后我可以将该JAR文件添加到其他项目中并使用它。我该如何做到这一点?还是有其他建议吗?


你的集成开发环境不支持这个吗? - fabien t
你可以通过控制台或使用一些额外的工具,如Ant或Maven来实现。你能更具体地说明你想要走哪个方向以及你的项目范围是什么(有多少类、资源依赖)? - hotzst
这只是一个小项目,使用了Struts、Hibernate和一些Spring框架;我正在使用STS IDE。 - Thiwanka Wickramage
你好,你解决了你的问题吗?给一些反馈意见,无论是成功还是失败。 - Shree Krishna
5个回答

0

首先,使用命令行将您的 .java 文件转换为 .class 文件。

javac ClassName.java

接下来,创建一个包含 ClassName.class 文件的 JAR 文件。在命令窗口中输入以下内容:
jar cvf ClassName.jar ClassName.class

这将创建一个名为ClassName.jar的JAR文件,并将ClassName.class文件放入其中。 如需进一步参考请参阅文档


0
你可以使用Maven打包你的jar文件,并将其部署到私有仓库,如 nexus,然后通过Maven依赖管理在第二个项目中下载该jar文件。从技术上讲,你不需要nexus,只需构建该jar文件并使其进入你的本地.m2仓库。然后当第二个项目被构建时,它将从你的本地.m2仓库中拉取该jar文件。你可以通过在jar项目上运行mvn install来实现这一点。
最简单的步骤是:
设置你的第一个项目 - jar 项目 - 与Maven一起构建。你需要在项目根目录中设置pom.xml。你还应该遵循标准文件夹布局。你不需要为Maven使用此布局,但它会使事情变得更容易。Maven将允许你在pom.xml的构建元素中覆盖所有这些位置。

接下来,可以在 Google 上搜索如何设置基本的 pom.xml。将您的第一个项目设置为包类型 jar。这是一个示例 pom.xml,它可能适用于您的 jar 项目。不要粘贴占位符,因为它们只是占位符,我不知道您构建项目的详细信息。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.your.package.base</groupId>
    <artifactId>your-jar-project-name</artifactId>
    <packaging>jar</packaging>
    <name>your-jar-project-name</name>
    <version>1.00</version>
    <url>http://maven.apache.org</url>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
     ...
    </dependencies>

    <build>
     ...
    </build>



</project>

在根目录下有了pom.xml文件后,切换到该目录并运行mvn install命令。这将构建jar包并将其放置在本地.m2仓库中。接下来,您需要在需要使用该jar项目的项目中设置一个pom.xml文件。将其插入到需要使用该jar的项目的依赖项部分中。

<dependency>
    <groupId>com.your.package.base</groupId>
    <artifactId>your-jar-project-name</artifactId>
    <version>1.00</version>
</dependency>

祝你好运并且玩得愉快!


0

您可以使用以下命令创建一个JAR文件

jar -cvf

这里的c表示创建,v表示详细,f表示要包含在您的jar内的文件。 如果您的类文件包括主类,则需要包含清单文件以提及主类名称。

注意:如果您想要一个包含另一个jar文件的独立可执行jar,则在执行独立jar时可能会出现问题,因为添加的库不会在执行时放置在类路径中。您可以借助eclipse IDE的帮助创建一个包含jar文件并成功执行jar文件的jar文件。


0
如果您想构建一个JAR文件,这取决于您使用的IDE。例如,在Netbeans中,您可以运行清理和构建命令,然后您的JAR文件将被放置在PROJECT_FOLDER> Dist中。

0
如果您正在使用Eclipse,则尝试安装FatJar插件。安装后,右键单击您的Java项目,即可将其构建为jar文件。如果需要,您还可以在结果jar中包含依赖项。

我正在使用基于Eclipse的STS IDE,那么该插件也支持STS吗? - Thiwanka Wickramage

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接