用命令行编译java并生成可执行的jar包方法
1.编写源代码
编写源文件:CardLayoutDemo.java并保存,例如:I:\myApp\CardLayoutDemo.java。程序结构如下:
package test; import java.awt.*; import javax.swing.*; //更多包的导入... class NotePadFrame extends JFrame { //主界面的设计... } //其他相关代码... public class CardLayoutDemo { public static void main(String[] args) { new NotePadFrame(); } }
2.打开终端
打开系统菜单:“开始”->“运行...”->输入“cmd”,打开终端。
执行如下命令转到源文件所在目录:
cd myApp
3.编译源文件
输入如下命令进行编译:
javac CardLayoutDemo.java
执行成功之后,会在当前目录下生成一系列.class文件。
4.新建包文件夹
输入如下命令新建包文件夹:
mkdir test
也可在资源管理器新建此文件夹。
此文件夹必须与源文件中定义的包名完全一致(package test;)。
5.将类文件放到新的文件夹里
在资源管理器里将编译生成的所有.class文件移动到新建的test文件夹。
6.测试程序是否可正常运行
在I:\myApp路径下输入如下命令:
java test.CardLayoutDemo
如果可以正常运行程序,就可以进行下一步了。否则应检查上述步骤的正确性。
7.生成可执行的jar包
在I:\myApp路径下输入如下命令:
jar -cef test.CardLayoutDemo CardLayoutDemo.jar test
以上命令及参数的含义如下:
jar命令为java自带的专用打包工具;
c代表生成新的jar包;
e代表可执行的类,亦即main方法所在的类。书写时要加上包名,在本例中是后面的test.CardLayoutDemo;
f代表生成的jar包的名称,在本例中是CardLayoutDemo.jar。此包名可以随意命名,没有规定;
test最后面的这个参数表示将test目录下的所有文件都打包放到新的jar包中。
8.测试jar包是否可正常运行
在I:\myApp路径下输入如下命令:
java -jar CardLayoutDemo.jar
如果可以正常运行程序,则说明jar包制作成功。
如果已经将“Java(TM) Platform SE binary”关联到.jar文件类型(通过正常安装jdk后都会正确关联),还可以通过双击来执行此类jar包,其感受与exe文件相同。
以上这篇用命令行编译java并生成可执行的jar包方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
将java程序打成jar包在cmd命令行下执行的方法
前言 大家都知道一个java应用项目可以打包成一个jar,当然你必须指定一个拥有main函数的main class作为你这个jar包的程序入口.本文将给大家介绍java程序打成jar包在cmd命令行下执行的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 一.打包 二.修改配置文件是程序能够引用第三方jar包 1.新建一个文件夹,用来存储这个项目 ------------第三方jar包单独存在一个文件夹下面(这里放在了lib下面)(重点是lib要和weixin.jar同
-
Eclipse创建java程序可执行jar包教程
一.eclipse中,在要打成jar包的项目名上右击,出现如下弹出框,选择"export": 二.在接下来出现的界面中点击"jar file",然后next: 三.在接下来出现的界面中,如图所示勾选上要打包的项目以及其他选项,例如test项目:然后点击右边箭头所指的browse,选择打好的jar包要保存的目录,同时给自己的jar包命名,例如我这里选择存放在桌面,名字为jarTest;然后点击"next",在之后弹出的界面中再点击一次"n
-
浅谈java 执行jar包中的main方法
浅谈java 执行jar包中的main方法 通过 OneJar 或 Maven 打包后 jar 文件,用命令: java -jar ****.jar 执行后总是运行指定的主方法,如果 jar 中有多个 main 方法,那么如何运行指定的 main 方法呢? 用下面的命令试试看: java -classpath ****.jar ****.****.className [args] "****.****"表示"包名": "className"表示&
-
java命令执行jar包的多种方法(四种方法)
大家都知道一个java应用项目可以打包成一个jar,当然你必须指定一个拥有main函数的main class作为你这个jar包的程序入口. 具体的方法是修改jar包内目录META-INF下的MANIFEST.MF文件. 比如有个叫做test.jar的jar包,里面有一个拥有main函数的main class:test.someClassName 我们就只要在MANIFEST.MF里面添加如下一句话: Main-Class: test.someClassName 然后我们可以在控制台里输入java
-
java打包成jar并执行jar包中指定的main方法
java打包成jar jar -cvf [jar包的名字] [需要打包的文件] 执行jar包中的main方法 java -jar ****.jar 执行后总是运行指定的主方法,如果 jar 中有多个 main 方法,那么如何运行指定的 main 方法呢? 用下面的命令试试看: java -classpath ****.jar ****.****.className [args] "****.****"表示"包名": "className"表示&q
-
Eclipse 导出可执行Java工程/可执行Jar文件(包含第三方Jar包)
Eclipse导出可执行Java工程/可执行Jar文件(包含第三方Jar包) 师兄部署了新的虚拟机,新学期大搞起来!之前由于爬虫代码不稳定,所以一直都是直接用Eclipse运行,然后遇到问题就修改的.但是这个比较麻烦,而且Eclipse本身就很占内存啊,摔!所以今天下午就把之前的代码清减了一下,对很多挫挫的System.out.println替换了log4j,路径啊数据库连接呀用配置文件处理了,最后打成可执行的Jar,这样在新的虚机上就可以大展拳脚咯^_^Y Biu~废话说完,进入正题,将Jav
-
java 中使用maven shade plugin 打可执行Jar包
java 中使用maven shade plugin 打可执行Jar包 eclipse里有一个功能叫做"打可执行(runnable) jar包", 用这个功能可以把一个工程自身和所有依赖包打成一个fat jar,并且指定Main方法,这样直接使用java jar xxx.jar就可以运行代码了. 但是在不使用eclipse的时候呢?其实,借助maven,我们很容易实现同样功能.maven提供了一个shade plugin,可以用来打fat jar, 同时也提供了指定main方法的功能.
-
Linux下用java -jar运行可执行jar包的方法教程
问题来源 一般来说,一个稍微大些的项目都会有一些依赖的Jar包,而在将项目部署到服务器的过程中,如果没有持续集成环境的话,也就是说服务器不支持在线编译及打包,那么需要自己上传依赖的Jar包,然而可能服务器上已经存在了该项目所依赖的Jar包(比如项目修复BUG,重新打包上传,而依赖不变),无需再次上传,此时只需将该项目单独打包,在运行的时候指定CLASSPATH即可. 在将Jar包部署到服务器上之后,设置CLASSPATH环境变量,运行Java -jar ...命令出现ClassNotFoundE
-
用命令行编译java并生成可执行的jar包方法
1.编写源代码 编写源文件:CardLayoutDemo.java并保存,例如:I:\myApp\CardLayoutDemo.java.程序结构如下: package test; import java.awt.*; import javax.swing.*; //更多包的导入... class NotePadFrame extends JFrame { //主界面的设计... } //其他相关代码... public class CardLayoutDemo { public static
-
使用maven生成可执行的jar包的方法
本文介绍了使用maven生成可执行的jar包的方法,分享给大家,具体如下: 从pom的xsi中可以打开描述pom的schema: 可以看到pom中,project的结构: 默认的mvn install生成的jar是不带主类入口的,需要在maven-compile-plugin中设置主类, <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSche
-
Java SE 9 多版本兼容 JAR 包示例
目录 说明 环境准备 命令行编译示例 Maven 项目配合多版本 Jar 示例 说明 Java 9 版本中增强了Jar 包多版本字节码文件格式支持,也就是说在同一个 Jar 包中我们可以包含多个 Java 版本的 class 文件,这样就能做到 Jar 包升级到新的 Java 版本时不用强迫使用方为了使用新 Jar 包而升级自己的业务模块 Java 版本,也不用针对不同最低支持 Java 版本提供不同的 Jar,真正的做到了一个 Jar 包兼容所有的目的. 本文通过以下示例来说明多版本 Jar
-
Java 动态生成类和实例, 并注入方法操作示例
本文实例讲述了Java 动态生成类和实例, 并注入方法.分享给大家供大家参考,具体如下: Java官方支持的, 必须要有接口才行 import java.lang.reflect.Constructor; import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; import java.lang.reflect.Proxy; import java.util.LinkedList; import ja
-
MySQL从命令行导入SQL脚本时出现中文乱码的解决方法
本文实例讲述了MySQL从命令行导入SQL脚本时出现中文乱码的解决方法.分享给大家供大家参考,具体如下: 在图形界面管理工具 MySql Query Browser中打开脚本(脚本包括建库.建表.添加数据),并执行,不会有任何问题:但是使用mysql命令行工具执行建库脚本时,添加数据中如果包含中文,存入的数据就是乱码或是???... 解决方法1:在MySql安装目录下找到my.ini,将[mysql]下的default-character-set=latin1改为default-characte
-
Java随机生成手机短信验证码的方法
本文实例讲述了Java随机生成手机短信验证码的方法.分享给大家供大家参考,具体如下: /** * 创建指定数量的随机字符串 * @param numberFlag 是否是数字 * @param length * @return */ public static String createRandom(boolean numberFlag, int length){ String retStr = ""; String strTable = numberFlag ? "1234
-
Java自动生成趋势比对数据的方法分享
目录 背景 详细设计及实现 趋势比对定义类 TrendCompare 趋势比对执行类 使用案例 背景 数据之间两两趋势比较在数据分析应用中是非常常见的应用场景,如下所示: 模拟考批次 班级 学生 语文 数学 英语 202302 三年一班 张小明 130 145 133 202302 三年一班 王二小 128 138 140 202302 三年一班 谢春花 136 142 139 202301 三年一班 张小明 132 140 128 202301 三年一班 王二小 125 146 142 202
-
将Java项目打包成可执行的jar包
一.通过 eclipse 自带打包 测试项目: Main.java package com.bug; import org.junit.Test; public class Main { public static void main(String[] args) { test(); } @Test public static void test() { System.out.println("HelloWorld"); System.out.println("HelloWo
-
详解如何使用maven生成可以执行的jar
不依赖任何外界包,maven如何生成可以执行的jar? pom中不包含任何引用的情况下,只需要在pom中添加 maven-jar-plugin即可. 解决过程 新建项目,仅包含一个main函数类:Xixi.java,输出 Xixi Say: hello pom中配置为 <groupId>com.paxi</groupId> <artifactId>xixi</artifactId> <version>1.0-SNAPSHOT</versio
-
idea打包java程序(包含依赖的所有jar包)
Intellij Idea打包Java项目 打开模块设置 如下图所示,选中需要打包的模块,右键点击,即会出现如下图所示的内容,点击Open Module Settings. 创建Artifacts 配置Jar包信息 注意配置输出路径 Output directory: 移动依赖Jar包到指定文件夹中并配置路径 如下图所示,将项目依赖的Mysql驱动包移动到library文件夹中.方法是只需要在上右键点击创建文件夹,然后将第三方的Jar包拖动进入此文件夹即可. 并且点击图中马赛克部分的那个Jar文
随机推荐
- 正则表达式详述 二
- php中利用post传递字符串重定向的实现代码
- php类声明和php类使用方法示例分享
- 晋城吧对DiscuzX进行的前端优化要点
- PHP编程中八种常见的文件操作方式
- python中while循环语句用法简单实例
- Android APK优化工具Zipalign详解
- Javascript aop(面向切面编程)之around(环绕)分析
- 不错的asp中显示新闻的功能
- jQuery自带的一些常用方法总结
- movie not found的解决办法(iis)
- ubuntu 添加中文支持实现方法
- Kotlin语法学习-变量定义、函数扩展、Parcelable序列化等简单总结
- 提交表单后 PHP获取提交内容的实现方法
- 详解Android应用层制作LED指示灯
- Vue2.0设置全局样式(less/sass和css)
- 详解使用VUE搭建后台管理系统(vue-cli更新至3.0)
- pandas通过索引进行排序的示例
- Android MVP BaseFragment 通用式封装的实现
- JavaScript Dom 绑定事件操作实例详解