打包成可运行的jar包

2024-05-04 16:58
文章标签 运行 打包 jar 成可

本文主要是介绍打包成可运行的jar包,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

方法一:通过jar命令

jar命令的用法:

下面是jar命令的帮助说明:

用法:jar {ctxui}[vfm0Me] [jar-file] [manifest-file] [entry-point] [-C dir] files ...

选项包括:

    -c  创建新的归档文件

    -t  列出归档目录

    -x  解压缩已归档的指定(或所有)文件

    -u  更新现有的归档文件

    -v  在标准输出中生成详细输出

    -f  指定归档文件名

    -m  包含指定清单文件中的清单信息

    -e  为捆绑到可执行 jar 文件的独立应用程序,指定应用程序入口点

    -0  仅存储;不使用任何 ZIP 压缩

    -M  不创建条目的清单文件

    -i  为指定的 jar 文件生成索引信息

    -C  更改为指定的目录并包含其中的文件

如果有任何目录文件,则对其进行递归处理。清单文件名、归档文件名和入口点名的指定顺序与 "m"、"f" 和 "e" 标志的指定顺序相同。

示例 1:将两个类文件归档到一个名为 classes.jar 的归档文件中:

jar cvf classes.jar Foo.class Bar.class

示例 2:使用现有的清单文件 "mymanifest" 并将 foo/ 目录中的所有文件归档到 "classes.jar" 中:

jar cvfm classes.jar mymanifest -C foo/ .

一、打包成一般的jar包

输入如下命令即可:

[plain] view plain copy
  1. jar cvf counter.jar -C bin . 
[plain] view plain copy
  1. jar cvf counter.jar -C bin .  

二、打包成可运行的jar包

要打包成可运行的jar包,需要在MANIFEST.MF文件中指定主类,以Java源代码行数统计程序的打包为例,演示如何打包:

1)首先编辑MANIFEST.MF文件,内容如下:

[plain] view plain copy
  1. Manifest-Version: 1.0 
  2. Created-By: rsljdkt 
  3. Class-Path: . 
  4. Main-Class: Main 
[plain] view plain copy
  1. Manifest-Version: 1.0  
  2. Created-By: rsljdkt  
  3. Class-Path: .  
  4. Main-Class: Main  

说明:

  第一行指定清单的版本,若无,则JDK默认生成:Manifest-Version: 1.0。

  第二行指明创建的作者,若无,则JDK默认生成Created-By: 1.6.0_22(Sun Microsystems Inc.)。

  第三行指定主类所在类路径。

  第四行指明程序运行的主类。

2)使用jar命令进行打包:

[plain] view plain copy
  1. jar cvfm counter.jar MANIFEST.MF -C bin . 
[plain] view plain copy
  1. jar cvfm counter.jar MANIFEST.MF -C bin .  

说明:

  参数f:指定打包后的包名。

  参数m:指定自定义的MANIFEST.MF清单文件,否则,JDK会自动生成不包含Main-Class的默认清单。

  参数c:指定是创建新的归档文件。

  参数v:在标准输出中生成详细输出,该选项是可选的。

方法二:使用Eclipse的Export功能:

一、打包成一般的jar包:

步骤如下:

  1)在要打包的项目上右击,选择Export。

  2)在弹出的窗口中,选择Java -> JAR File,然后点击next按钮。

  3)在JAR File Specification窗口中,设置打包成的文件名和存放位置,点击两侧next。

  4)在JAR Manifest Specification窗口中,设置MANIFEST.MF清单文件的配置,若仅仅打包成单纯的jar包的话,不用做任何修改,采取默认即可,若打包成可执行jar包的话,可以使用已存在的MANIFEST文件或者直接选择Main class。

  5)点击Finish按钮,完成打包。

二、打包成可运行的jar包

步骤如下:

  1)在要打包的项目上右击,选择Export。

  2)在弹出的窗口中,选择Java -> Runnable JAR File,然后点击next按钮。

  3)在Runnable JAR File Specification窗口中,选择Launch configuration和Export destination。

  4)点击Finish按钮,打包完成。

这篇关于打包成可运行的jar包的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/959668

相关文章

Python打包成exe常用的四种方法小结

《Python打包成exe常用的四种方法小结》本文主要介绍了Python打包成exe常用的四种方法,包括PyInstaller、cx_Freeze、Py2exe、Nuitka,文中通过示例代码介绍的非... 目录一.PyInstaller11.安装:2. PyInstaller常用参数下面是pyinstal

nodejs打包作为公共包使用的完整流程

《nodejs打包作为公共包使用的完整流程》在Node.js项目中,打包和部署是发布应用的关键步骤,:本文主要介绍nodejs打包作为公共包使用的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言一、前置准备二、创建与编码三、一键构建四、本地“白嫖”测试(可选)五、发布公共包六、常见踩坑提醒

docker编写java的jar完整步骤记录

《docker编写java的jar完整步骤记录》在平常的开发工作中,我们经常需要部署项目,开发测试完成后,最关键的一步就是部署,:本文主要介绍docker编写java的jar的相关资料,文中通过代... 目录all-docker/生成Docker打包部署文件配置服务A的Dockerfile (a/Docke

javacv依赖太大导致jar包也大的解决办法

《javacv依赖太大导致jar包也大的解决办法》随着项目的复杂度和依赖关系的增加,打包后的JAR包可能会变得很大,:本文主要介绍javacv依赖太大导致jar包也大的解决办法,文中通过代码介绍的... 目录前言1.检查依赖2.更改依赖3.检查副依赖总结 前言最近在写项目时,用到了Javacv里的获取视频

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

java -jar example.jar 产生的日志输出到指定文件的方法

《java-jarexample.jar产生的日志输出到指定文件的方法》这篇文章给大家介绍java-jarexample.jar产生的日志输出到指定文件的方法,本文给大家介绍的非常详细,对大家的... 目录怎么让 Java -jar example.jar 产生的日志输出到指定文件一、方法1:使用重定向1、

Spring Boot项目如何使用外部application.yml配置文件启动JAR包

《SpringBoot项目如何使用外部application.yml配置文件启动JAR包》文章介绍了SpringBoot项目通过指定外部application.yml配置文件启动JAR包的方法,包括... 目录Spring Boot项目中使用外部application.yml配置文件启动JAR包一、基本原理

解决Failed to get nested archive for entry BOOT-INF/lib/xxx.jar问题

《解决FailedtogetnestedarchiveforentryBOOT-INF/lib/xxx.jar问题》解决BOOT-INF/lib/xxx.jar替换异常需确保路径正确:解... 目录Failed to get nested archive for entry BOOT-INF/lib/xxx

idea Maven Springboot多模块项目打包时90%的问题及解决方案

《ideaMavenSpringboot多模块项目打包时90%的问题及解决方案》:本文主要介绍ideaMavenSpringboot多模块项目打包时90%的问题及解决方案,具有很好的参考价值,... 目录1. 前言2. 问题3. 解决办法4. jar 包冲突总结1. 前言之所以写这篇文章是因为在使用Mav