用命令行编译java并生成可执行的jar包

时间:2022-02-03 20:12:34
用命令行编译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”,打开终端。
执行如下命令转到源文件所在目录:
I:
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包的更多相关文章

  1. 命令行编译java项目

    命令行编译java项目 项目名: testproj 目录 src -> cn -> busix -> test bin lib 编译项目 cd testproj javac -d . ...

  2. Android 命令行编译、打包生成apk文件

    一.搭建搭建环境 1. 安装JDK 和 Android SDK   2. 配置环境变量 D:\android-sdk-windows\tools C:\Program Files\Java\jdk1. ...

  3. 命令行编译java的一点总结

    今天在使用命令行编译时遇到些问题,顺便又仔细分析了一些基础知识,记录总结一下. 下面使用javac和java命令都是在 D:\Workspace\java目录下执行的: 1 //Inner.java ...

  4. Maven 生成可执行的jar包

    maven 默认打包生成的 jar 包是不能够直接运行的,因为带有 main 方法的类信息不会添加到 manifest 中,即打开 jar 文件中的 META-INF/MANIFEST.MF 文件,将 ...

  5. Maven 手动添加第三方依赖包及编译打包和java命令行编译JAVA文件并使用jar命令打包

    一,实例:新建了一个Maven项目,在eclipse中通过 build path –> configure path-.将依赖包添加到工程中后,eclipse不报错了.但是用Maven命令 mv ...

  6. Linux中命令行编译java接口总是提示找不到符号的疑难杂症的解决

    今天学习java的接口,在linux的命令行下写代码练练手吧,啪啪啪一顿猛敲,写了一个接口UsbInserface,UDisk继承UsbInterface,写完了那就编译到bin目录呗. 当时写程序的 ...

  7. 用cmd命令行编译JAVA程序时出现“找不到或无法加载主类”

    今天复习Java基础知识时,使用cmd命令窗口进行编译Java文件发现了如下问题: 网上有很多的解决方法,和问题出现的讨论,以下方法是解决我出现这个问题方式. 解决方式: 重点是圈住的部分. 下面是我 ...

  8. 在linux下用命令行编译 java的eclipse项目

    由于jdk的版本问题导致在windows上编译打包好的jar包放在linux服务器上运行的时候出现一点小异常,所以决定在linux上进行一次项目编译,这有两个选择1.在相同的linux环境下安装lin ...

  9. 如何命令行编译Java工程

    在src下的包含Main的包下打开命令行,javac -classpath “路径到src,不到包下”  Main.java

随机推荐

  1. linux基础

    用户管理: id:可以查看当前用户 whoami:查看当前的用户 who:看当前已经登录的用户  w:也可以看 添加用户:useradd name 添加用户组: useradd -g groupnam ...

  2. 从一个QQ群友那儿偷来的js图形 ^_^

    <script type="text/javascript"> var head=document.createElement("HEAD"); d ...

  3. C&plus;&plus;11 不抛异常的new operator

    在google cpp style guide里面明确指出:we don't use exceptions C++11的noexcept关键字为这种选择提供了便利. C++11以前,提及malloc和 ...

  4. 了解Git

           对于计算机软件初学者来说Git并没有太多了解, 以前没有接触过,但是老师说对其进行了解,也没有什么概念,只有通过上网进行了解 . 了解到的大概内容如下:                 ...

  5. lintcode&colon;子数组之和为0

    题目: 子数组之和 给定一个整数数组,找到和为零的子数组.你的代码应该返回满足要求的子数组的起始位置和结束位置 样例 给出[-3, 1, 2, -3, 4],返回[0, 2] 或者 [1, 3]. 解 ...

  6. &lpar;Step by Step&rpar;How to setup IP Phone Server&lpar;VoIP Server&rpar; for free&period;

    You must have heard about IP Phone and SIP (Software IP Phone).Nowadays standard PSTN phone are bein ...

  7. 修改Windows系统的启动Shell

    前提:当前系统中有可用的shell文件   方法: 修改当前用户的系统默认shell(只对当前用户生效,且优先于本机默认的shell) 修改“HKCU\SOFTWARE\Microsoft\Windo ...

  8. PHP的线程安全与非线程&lpar;NTS&rpar;安全版本的区别

    Windows版的PHP从版本5.2.1开始有Thread Safe(线程安全)和None Thread Safe(NTS,非线程安全)之分,这两者不同在于何处?到底应该用哪种?这里做一个简单的介绍. ...

  9. Django中ORM模型总结&lpar;一&rpar;&lbrack;概述,查询语句&rsqb;

    理解ORM框架 概述 O:(objects)->类和对象. R:(Relation)->关系,关系数据库中的表格. M:(Mapping)->映射. 作用: 可以通过类和类对象就可以 ...

  10. eclipse删除多余的工作空间

    window->preferences->startup and shutdown->workspaces如图: