首页
/ really-executable-jar-maven-plugin 技术文档

really-executable-jar-maven-plugin 技术文档

2024-12-23 15:32:24作者:胡易黎Nicole

1. 安装指南

1.1 环境要求

  • JDK 11 或更高版本(用于构建插件)
  • Maven 3.x

1.2 添加插件到项目

在项目的 pom.xml 文件中添加以下插件配置:

<plugin>
  <groupId>org.skife.maven</groupId>
  <artifactId>really-executable-jar-maven-plugin</artifactId>
  <version>2.1.1</version>
  <configuration>
    <!-- (可选) 插入到 java 调用中的标志,例如 "java $flags -jar ..." -->
    <flags>-Xmx1G</flags>
    
    <!-- (可选) 输入文件名:只有这个特定的文件会被设置为可执行文件 -->
    <inputFile>target/fooBla.jar</inputFile>
    
    <!-- (可选) 分类器名称:只有带有这个分类器的构件会被设置为可执行文件 -->
    <classifier>shaded</classifier>

    <!-- (可选) 支持其他打包格式 -->
    <allowOtherTypes>true</allowOtherTypes>

    <!-- (可选) 新的二进制可执行文件的名称,如果未设置,则只会使原始构件可执行 -->
    <programFile>nifty-executable</programFile>
    
    <!-- (可选) 定义嵌入到可执行 jar 中的脚本文件的名称。可以用来覆盖默认的启动脚本 -->
    <scriptFile>src/packaging/someScript.extension</scriptFile>
  </configuration>
  <executions>
    <execution>
      <phase>package</phase>
      <goals>
        <goal>really-executable-jar</goal>
      </goals>
    </execution>
  </executions>
</plugin>

1.3 构建项目

运行以下命令来构建项目并生成可执行的 JAR 文件:

mvn clean package

2. 项目的使用说明

2.1 生成可执行 JAR 文件

在项目中使用 really-executable-jar-maven-plugin 插件后,Maven 会在打包阶段自动将 JAR 文件转换为可执行文件。生成的可执行文件可以直接在 Unix 系统上运行。

2.2 运行可执行 JAR 文件

在 Unix 系统上,可以直接运行生成的可执行 JAR 文件:

./target/your-executable-jar.jar

3. 项目API使用文档

3.1 插件配置参数

  • flags: 插入到 java 调用中的标志,例如 -Xmx1G
  • inputFile: 指定要设置为可执行文件的输入文件名。
  • classifier: 指定分类器名称,只有带有该分类器的构件会被设置为可执行文件。
  • allowOtherTypes: 允许支持其他打包格式。
  • programFile: 指定新的二进制可执行文件的名称。
  • scriptFile: 指定嵌入到可执行 JAR 中的脚本文件的名称。

3.2 插件执行阶段

插件在 package 阶段执行,确保在生成 JAR 文件后立即将其转换为可执行文件。

4. 项目安装方式

4.1 通过 Maven 中央仓库安装

插件已经发布到 Maven 中央仓库,可以直接在 pom.xml 中引用:

<dependency>
  <groupId>org.skife.maven</groupId>
  <artifactId>really-executable-jar-maven-plugin</artifactId>
  <version>2.1.1</version>
</dependency>

4.2 手动安装

如果需要手动安装插件,可以从 Maven 中央仓库下载插件的 JAR 文件,并将其安装到本地 Maven 仓库:

mvn install:install-file -Dfile=really-executable-jar-maven-plugin-2.1.1.jar -DgroupId=org.skife.maven -DartifactId=really-executable-jar-maven-plugin -Dversion=2.1.1 -Dpackaging=jar

通过以上步骤,您可以成功安装并使用 really-executable-jar-maven-plugin 插件,将 JAR 文件转换为可执行文件。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
51
14
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
289
820
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
484
388
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
110
195
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
58
139
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
364
37
cjoycjoy
一个高性能、可扩展、轻量、省心的仓颉Web框架。Rest, 宏路由,Json, 中间件,参数绑定与校验,文件上传下载,MCP......
Cangjie
59
7
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
977
0
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
96
250
CangjieMagicCangjieMagic
基于仓颉编程语言构建的 LLM Agent 开发框架,其主要特点包括:Agent DSL、支持 MCP 协议,支持模块化调用,支持任务智能规划。
Cangjie
578
41