java9可执行jar_单个java文件打成可执行jar包
1 概述
使用JDK自带的jar与java将单个java文件打成可执行jar包并运行。 当然也可以使用IDE完成,使用Maven只需要一个简单的package,但是单个文件嘛,没必要这么“凶狠”。
2 新建测试文件
著名的Hello World:
public class Main
{
public static void main(String [] args)
{
System.out.println("Hello world.");
}
}
3 编译
生成jar包需要class文件,换句话说需要先编译,建议先创建一个临时文件夹存放class文件。
mkdir test && mv Main.java test && cd test;
javac Main.java
4 打包
jar --create --verbose --file Main.jar --main-class Main *.class
说明一下各个参数:
--create:创建jar
--verbose:打包时产生输出
--file:打包的jar文件名
--main-class:指定入口类
*.class:打包所有的class文件,这里可以接受的参数可以是*,表示打包该目录下所有文件,也可以是目录名,打包指定目录下的所有文件
这里使用默认的包,若是自定义包,使用
--main-class com.xxx.xxx.Main
即可。
注意打包时网上有的教程使用简写:
jar -cvf Main.jar *.class
这样确实是能打包,但是直接运行的时候会提示:
no main manifest attribute, in Main.jar
可以加上--main-class参数或者直接更新打包后里面的MANIFEST.mf文件,加上:
Main-Class: Main
当然还是建议使用上述的方法一步打包到位。
5 运行
java -jar Main.jar
java9可执行jar_单个java文件打成可执行jar包相关推荐
- 单个Java文件打成可执行JAR包
1 概述 使用JDK自带的jar与java命令将单个Java文件打成可执行JAR包并运行. 当然也可以使用IDE完成,使用Maven只需要一个简单的package,但是单个文件嘛,没必要这么" ...
- 手动将java文件打包编译成jar包
心血来潮,很多idea工具都有打包的功能,却想试试怎么手动打包! 具体步骤如下: 1.编写一个java文件(Hello.java) public class Hello{public static v ...
- 编译单个java文件
编译单个java文件问题 中文乱码 如果java代码中存在中文,直接使用javac 命令编译会出现中文乱码的情况! 中文乱码解决办法 1 先将要编译的java文件编码格式改成utf-8.如果开发工具是 ...
- 单个java文件中引入jar包
在我们写demo,只有一个java文件时,有时候会遇到需要引用jar包问题,去idea建个项目未免实在太麻烦,其实java是支持单个java文件引用jar包的,需要在编译时添加相关选项 在执行编译是, ...
- 将java文件打成jar包
新建一个配置文件mainfest.mf 设置内容Main-Class: Str2CamelCaseStr 把配置文件放到编译好的java文件 xxx.class同目录下面 到当前目录打开命令窗口 执行 ...
- idea打开java文件_IDEA运行单个Java文件
对于某些Java示例可能是只有单个文件,并不是完整的Java工程,那么要如何运行单个Java文件呢,以IDEA为例. 我的环境: IDEA 2017.3.2 jdk 1.8.0.73 操作步骤: 1. ...
- JAVA项目打成可执行jar包
java项目打jar包分为2种情况: 一.java项目没有导入第三方jar包 这时候打包就比较简单: 1. 首先在Eclipse中打开项目, 右键点击项目,选择"Export": ...
- java -uf_Java如何快速修改Jar包里的文件内容
需求背景:写了一个实时读取日志文件以及监控的小程序,打包成了Jar包可执行文件,通过我们的web主系统上传到各个服务器,然后调用ssh命令执行.每次上传前都要通过解压缩软件修改或者替换里面的配置文件, ...
- 第5步 配置pom.xml文件 pom文件好了就是jar包引入好了
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...
最新文章
- php 标准输出到文件格式,php格式输出文件var_export函数实例
- P3项目全球模板狗血设置之一 --- 发货到成本中心需要输入Customer
- 参加第十六届智能车竞赛同学提问与回答-6-30
- DedeCMS Wap.php绑定域名的方法
- 50.什么是内部碎片?什么是外部碎片?
- 不再为DataGrid生成的表格的单无格中的内容过长、自动折行、表格撑开等问题而烦恼----一个很久以前的做品...
- getBoundingClientRect的用法
- python3 重新学习
- java的character用法_Java中Character类的使用方法
- C#学习笔记——软件注册与注册机
- 程序员面试金典 - 面试题 08.05. 递归乘法(位运算)
- python批量_Python学习第九十三天:Python批量处理图片
- 存储相关知识-DAS/SAN/NAS
- 绿坝进程关闭的简单方法
- 从强化学习的角度看alphago与MCTS
- 日本超高人气聊天软件LINE最全注册攻略来了
- 《炬丰科技-半导体工艺》多层薄膜封装工艺
- 关于Halcon的离心机试管槽定位
- Python中面向对象封装案例——小明爱跑步、摆放家具
- Fidder 请求信息颜色的含义
热门文章
- ArcGIS水文分析实战教程(9)雨量计算与流量统计
- 我的Android进阶之旅------Android嵌入图像InsetDrawable的用法
- Python包管理工具Distribute的安装
- 使用阿里云服务器时遇到的问题及解决办法
- Github的Tom大鸟:我是如何拒绝微软30w的诱惑,专注于Github事业
- ubuntu 10.04 安装eclipse及其中文语言包
- 使用GIF(仅限Delphi2007)
- iOS学习笔记--01swift实现提示框第三方库:MBProgressHUD
- vue实现多个元素或多个组件之间动画效果
- SpringMVC 处理multipart形式数据:java方式配置文件上传