将class文件转换为exe运行程序

合集下载

resgen.exe 使用方法

resgen.exe 使用方法

一、什么是resgen.exe?resgen.exe 是一个用于处理多语言资源的命令行工具。

它可以将文本文件或 XML 文件转换成资源文件,以便在 .NET 程序中进行使用。

二、resgen.exe 的基本用法1. 命令格式resgen.exe InputFile [pile:OutputFile] [/str:Language][/useSourcePath] [/publicClass:ClassName] [/r:AssemblyName] [pile:OutputFile] [/h]2. 参数说明- InputFile:需要处理的输入文件,可以是文本文件或者 XML 文件。

- pile:OutputFile:指定处理结果的输出文件名。

- /str:Language:指定要生成资源的语言,默认为 en-US。

- /useSourcePath:在输出文件名中包含输入文件的完整路径。

- /publicClass:ClassName:指定输出资源类的名称。

- /r:AssemblyName:指定要引用的程序集。

- /h:显示帮助信息。

3. 使用示例- 将一个文本文件转换为资源文件:resgen.exe InputFile.txt pile:OutputFile.resources- 指定生成的资源语言为中文:resgen.exe InputFile.txt pile:OutputFile.resources /str:zh-CN- 指定输出资源类的名称为 MyResource:resgen.exe InputFile.txt pile:OutputFile.resources/publicClass:MyResource三、resgen.exe 的高级用法1. 引用其它程序集使用 /r 参数可以指定要在生成的资源文件中引用的程序集。

这样,在资源文件中就可以使用外部程序集中定义的类型和成员。

2. 处理包含多个文件的资源对于多个文件共同组成的资源,也可以使用 resgen.exe 进行处理。

exe4J打包jar文件成exe可执行文件

exe4J打包jar文件成exe可执行文件

exe4J打包jar⽂件成exe可执⾏⽂件exe4j_6.0下载(x86\x64\注册机):打包步骤:1.打开安装好的exe4j软件,⾸先是⼀个欢迎界⾯,直接【next】2.选择【JAR in EXE mode】,然后【next】;3.需要输⼊程序的缩写名字和指明输出⽬录,就是exe的保存⽬录,然后【next】;4.指定程序的名字,设置程序的图标,注意,程序图标要⽤ico格式的图⽚;Executable type是exe程序执⾏效果,1、GUI aoolication 是只有GUI程序界⾯ 2、Console application 是打开程序并携带控制台选项“ Allow only a single running instance of the application”,勾选上之后,该exe只能运⾏⼀个;选择Redirection选项,在两个位置中可以写记录⽇志的⽂件名称,⽬录为和exe的相同⽬录;在32-bit or 64-bit来决定你⽣成的exe是32位还是64位的;Version info为版本说明。

5.我们需要添加我们的jar包,点击右边绿⾊的 “+”号,然后选择【Archive】,打开浏览⽬录,找到我们的jar包,然后选择【打开】,【ok】;main class中选择程序的⼊⼝,包含main⽅法的类VM Parameters中可以设置虚拟机的⼀下参数,-Dfile.encoding=utf-8是设置了utf-8的编码,以防中⽂乱码;6.设置JRE的最⼩最⾼版本,我们根据⾃⼰的情况设置就ok,⼩版本设置成1.5,⼤版本设置成1.8,就⾏;然后点击【Advanced Options】,选择【Search sequence】,将我们的JRE添加到软件中,这样的话,我们的代码可以在别的没有安装Java环境的电脑上运⾏;点击右边的添加,选择【Directory】,然后选择【浏览】,找到我们的JRE,然后添加;注意:软件默认的三个配置需要全部删除然后【Next】,点击左侧的【Preferred VM】,选择【Client hotspot VM】,然后【next】;7.其余的步骤我们直接默认就ok了,这样我们⽣成的exe⽂件就能正常运⾏了!8.最后在Finished中选择save,保存现在的配置之后我们的成品⽬录结构是:注意:上⽂选择 jre环境:/jre,就体现在这个地⽅,运⾏时会找到当前⽬录的jre⽂件夹,程序才能在⽆jre开发环境上正常执⾏jre⽂件夹,直接复制JDK的jre⽂件夹即可。

Eclipse中将项目导出jar包,以及转化成exe的方法

Eclipse中将项目导出jar包,以及转化成exe的方法

Eclipse中将项目导出jar包,以及转化成exe文件2011-06-27 09:24一、导出jar文件:如果你的程序开发已经接近尾声了,正准备将其生成桌面可执行文件却不知道该如何操作时,你只要按照以下步骤实行即可:选中你的项目---然后右击弹出选项列表---选择Export---Java---jarfile---next---browser(选择jar的存放路径)---next---next(不管太多继续下一步)---browser(选择你程序的主类--OK)---finish;查看你存放jar的目录,是否已经生成了?如果没有你一定没按照步骤操作.二、运行jar文件:生成的jar文件你可以双击运行它,但默认情况下会以压缩包的方式打开,如果这不是你想要的结果,请右击文件---打开方式---选择java(TM)platform来运行.我想这时你应该看到了你的软件界面.先恭喜你了..三、连同第三方文件一并导出至jar文件:如果你在程序开发的时候用到了第三方提供的API或者其它附属资源,在你导出生成jar文件时你必须将第三方的文件一并导出,不然你的程序运行将达不到你想要的结果.你可以利用Fat jar插件生成jar,Fat jar 的下载地址:/projects/fjep/下载的文件是net.sf.fjep.fatjar_0.0.31.zip,解压缩后你会看到plugins文件夹中的net.sf.fjep.fatjar_0.0.31.jar文件(简称Fat jar).插件安装:把Fat jar文件拷贝到你的eclipse目录下的plugins中..重新启动你的eclipse平台,然后查看Window---preferences,弹出的窗口中有Fat jar preferences这一项则说明你已经安装成功了,没有这一项则未安装成功,需要多做如下几步操作:到你的eclipse目录下的configuration---org.eclipse.update,并删除platform.xml文件,然后重新启动eclipse.查看Window---preferences,你会发现Fat jar preferences这一项.恭喜你安装成功了.(未成功可直接去墙撞死)..用Fat jar打包:右击你的项目,选项列表中有Build Fat jar这一项,选择它,弹出的窗口你会觉得特别亲切,一目了然使用很方便,点击Browser(Main-Class选择你的主类)---next---finish(勾选你需要一起打包的资源,默认为全部勾选).瞧,jar文件就生成在你的工程项目中了.运行它,一切顺利,否则就是你编程的问题了..另:如果你不想用Fat jar来打包,有一个更快捷的方法可以帮助你,但也是有缺陷的.步骤:将你需要用到的附属文件放到你的jre安装目录下的\lib\ext目录中(安装JDK的同时也安装了jre),再通过(一、导出jar文件)的方式生成jar.这样就可以了.它有个致命的缺点就是,这样的jar文件只能在你本机可以使用,如果要在别的机子上运行必需在\lib\ext放置同样的附属资源.四、将jar文件转换成exe可执行文件:exe文件使用方便,而且还可以提高源码及资源的安全性,但同时也失去了java的初衷--跨平台性.如果你坚持要转换成exe文件,请按以下方式进行:利用exe4j这个软件转换jar文件为exe文件,exe4j下载地址:/download/exe4j/files.html,(目前最新版本为4.2)有的需要安装,有的只要解压缩即可用.我一般用安装的exe4j软件,它们没有什么区别,因此找个可以用的就行了.下载安装后,运行它,接着按步骤操作:1.运行后直接点Next.2.选择第二项“JAR in EXE mode”,之后点击Next.3.在General---Short name of your application框中输入你的应用程序的名字(随便即可),在Directories---Output directory框中输入生成exe后的保存路径,然后Next.4.在Excutable name框中输入将要生成的exe的名字,“Icon File”是应用程序显示的小图标,不选也行.继续Next.5.必须先配置Class-Path,点击+号添加文件,即jar文件,如果有用到其它资源需要把资源一起添加进去.6.General --- Main Class选择主类.7.Java Version --- Minimum version(低版本必须填写),Maximum version(高版本可以为空),如果都有填写那么高版本的值必须大于低版本的值.8.勾选Allow JREs with a beta version number以及Only allow JDKs and no JREs.接着Next.到这一步你可以直接finish.这样就把jar转换成exe文件了.你可以点击Click Here to Start the Application 按钮测试生成的文件.到这里就完毕了,对你有没有帮助呢?我想多少解决一些人的烦恼是有的..注意:exe4j是需要注册码激活的,没激活的情况下也可以用,但是在运行生成的exe文件时,会先弹出一个对话框提示该程序是由未注册的软件创建的,提示您激活。

C下执行命令行的方法

C下执行命令行的方法

一、system()--执行shell命令1、包含头文件:#include <stdlib.h>2、定义int system(const char * string);3、参数String:合法的可执行DOS(SHELL)命令4、返回值1)如果system()在调用/bin/sh 时失败则返回127, 其他失败原因返回-1。

2)若参数string 为空指针(NULL), 则返回非零值。

3)如果system()调用成功则最后会返回执行shell 命令后的返回值, 但是此返回值也有可能为system()调用/bin/sh 失败所返回的127, 因此最好能再检查errno 来确认执行成功。

5、说明system()会调用fork()产生子进程, 由子进程来调用/bin/sh-c string 来执行参数string 字符串所代表的命令, 此命令执行完后随即返回原调用的进程. 在调用system()期间SIGCHLD 信号会被暂时搁置,SIGINT 和SIGQUIT 信号则会被忽略。

6、用例system(“ipconfig/all”);7、重定向标准输出流FILE *stream;stream = freopen(“data.txt”,”wb”,stdout);运行结果可以重定向到data.txt8、隐藏控制台窗口#pragma comment( linker, “/subsystem:\”windows\”/entry:\”mainCRTStartup\”” )仍有调用的DOS窗口一闪,且重定向失效。

二、WinExec()—运行可执行程序1、包含头文件#include<windows.h>2、定义UINT Win Exec(LPCSTR lpCmdLine, UINT uCmdShow);3、参数lpCmdLine:指向一个空结束的字符串,串中包含将要执行的应用程序的命令行(文件名加上可选参数)。

如何把java程序编译成.exe文件(就是制作可执行的JAR文件包)

如何把java程序编译成.exe文件(就是制作可执行的JAR文件包)

需要注意的是,创建的 JAR 文件包中需要包含完整的、与 Java 程序的包结构对应的目录结构,就像上例一样。而 Main-Class 指定的类,也必须是完整的、包含包路径的类名,如上例的 test.Test;而且在没有打成 JAR 文件包之前可以使用 java <类名> 来运行这个类,即在上例中 java test.Test 是可以正确运行的 (当然要在 CLASSPATH 正确的情况下)。
其实不然,如果开发者能够制作一个可执行的 JAR 文件包交给用户,那么用户使用起来就方便了。在 Windows 下安装 JRE (Java Runtime Environment) 的时候,安装文件会将 .jar 文件映射给 javaw.exe 打开。那么,对于一个可执行的 JAR 文件包,用户只需要双击它就可以运行程序了,和阅读 .chm 文档一样方便 (.chm 文档默认是由 hh.exe 打开的)。那么,现在的关键,就是如何来创建这个可执行的 JAR 文件包。
`-- manifest.mf
这时候,需要到 test 目录的上级目录中去使用 jar 命令来创建 JAR 文件包。也就是在目录树中使用“==”表示的那个目录中,使用如下命令:
jar cvfm test.jar manifest.mf test
之后在“==”目录中创建了 test.jar,这个 test.jar 就是执行的 JAR 文件包。运行时只需要使用 java -jar test.jar 命令即可。
Main-Class: 可执行主类全名(包含包名)
例如,假设上例中的 Test.class 是属于 test 包的,而且是可执行的类 (定义了 public static void main(String[]) 方法),那么这个 manifest.mf 可以编辑如下:

cl.exe命令参数详解(精)

cl.exe命令参数详解(精)

预编译头的问题总算解决了 2011.2.11 新的一年开始了 CL.exe link.exe 命令(转) 1、设置环境变量: PATH=C:\Program Files\Microsoft Visual Studio 8\VC\bin INCLUDE=C:\Program Files\Microsoft Visual Studio 8\VC\include LIB=C:\Program Files\Microsoft Visual Studio 8\VC\lib 如果提示找不到mspdb80.dll文件,则从C:\Program Files\Microsoft Visual Studio 8\Common7\IDE下拷贝―msobj80.dll,mspdb80.dll,mspdbcore.dll,mspdbsrv.exe‖这四个文件到C:\Program Files\Microsoft Visual Studio 8\VC\bin下即可。

2、命令选项: 1 /C:在预处理输出中保留注释语句 2 /c:只编译,不连接,相当于在"Build"菜单下选择了"Compile" 3 /D:定义常量和宏,与源程序里的#define 有相同效果 4 /E:预处理C、C++源文件,将源文件中所有的预编译指令及宏展开,将注释去掉,然后将预处理器的输出拷贝至标准输出设备输出,并且在每个文件的开头和末尾加入#line 5 /EH:指定编译器用何种异常处理模型 6 /EP:同/E,只是去掉了#line 7 /F:设置程序的堆栈大小 8 /FA:设置生成何种列表文件(汇编、汇编与机器码、汇编与源码、汇编与机器码以及源码) 9 /Fa:指定用/FA设置的列表文件的存放路径及(或)文件名 10 /FD:生成文件的相互依赖信息 11 /Fd:设置程序数据库文件(PDB)的存放路径及(或)文件名12 /Fe:设置最终可执行文件的存放路径及(或)文件名 13 /FI:预处理指定的头文件,与源文件中的#include有相同效果 14 /Fm:创建map文件 15 /Fo:设置编译后Obj文件的存放路径及(或)文件名 16 /Fp:设置预编译文件(pch)的存放路径及(或)文件名 17 /FR:生成浏览信息(sbr)文件 18 /Fr:同/FR,不同之处在于/Fr不包括局部变量信息 19 /G3:为80386处理器优化代码生成 20 /G4:为80486处理器优化代码生成 21 /G5:为Pentium处理器优化代码生成 22 /G6:为Pentium Pro处理器优化代码生成 23 /GA:为Windows应用程序作优化 24 /GB:为Pentium处理器优化代码生成,使用80386、80486、Pentium、Pentium Pro的混合指令集,是代码生成的默认选项(程序属性选项中Processor对应Blend) 25 /GD:为Windows动态库(dll)作优化,此开关在VC6中没有实现 26 /Gd:指定使用__cdecl的函数调用规则 27 /Ge:激活堆栈检测 28 /GF:消除程序中的重复的字符串,并将她放到只读的缓冲区中 29 /Gf:消除程序中的重复字符串 30 /Gh:在每个函数的开头调用钩子(hook)函数--penter 31 /Gi:允许渐进编译 32 /Gm:允许最小化rebuild 33 /GR:允许运行时类型信息(Run-Time Type Infomation 34 /Gr:指定使用__fastcall的函数调用规则 35 /Gs:控制堆栈检测所用内存大小 36 /GT:支持用__declspec(thread分配的数据的fier-safety 37/GX:允许同步异常处理,与/EHsc开关等价 38 /Gy:允许编译器将每一个函数封装成COMDATs的形式,供连接器调用 39 /GZ:允许在Debug build 的时候捕捉Release build的错误 40 /Gz:指定使用__stdcall的函数调用规则 41 /H:限制外部名字的长度42 /HELP:列出编译器的所有的命令开关 43 /I:指定头文件的搜索路径 44 /J:将char的缺省类型从signed char改成unsigned char 45 /LD:创建一个动态连接库 46 /LDd:创建一个Debug版本的动态链接库 47 /link:将指定的选项传给连接器 48 /MD:选择多线程、DLL版本的C Run-Time库 49 /MDd:选择多线程、DLL、Debug版本的C Run-Time库 50 /ML:选择单线程版本的C Run—Time库 51 /MLd:选择单线程、Debug版本的C Run—Time库 52 /MT:选择多线程版本的C Run-Time库 53 /MTd:选择多线程、Debug版本的C Run—Time库 54 /nologo:不显示程序的版权信息 55 /O1:优化使产生的可执行代码最小 56 /O2:优化使产生的可执行代码速度最快 57 /Oa:指示编译器程序里没有使用别名,可以提高程序的执行速度 58 /Ob:控制内联(inline)函数的展开 59 /Od:禁止代码优化 60 /Og:使用全局优化 61 /Oi:用内部函数去代替程序里的函数调用,可以使程序运行的更快,但程序的长度变长 62 /Op:提高浮点数比较运算的一致性 63 /Os:产生尽可能小的可执行代码 64 /Ot:产生尽可能块的可执行代码 65 /Ow:指示编译器在函数体内部没有使用别名 66 /Ox:组合了几个优化开关,达到尽可能多的优化 67 /Oy:阻止调用堆栈里创建帧指针 68 /Q1f:对核心级的设备驱动程序生成单独的调试信息 69 /QI0f:对Pentium 0x0f错误指令作修正70 /Qifdiv:对Pentium FDIV错误指令作修正 71 /P:将预处理输出写到指定文件里,文件的后缀名为I 72 /TC:将命令行上的所有文件都当作C源程序编译,不管后缀名是否为.c 73 /Tc:将指定的文件当作C源程序编译,不管后缀名是否为.c 74 /TP:将命令行上的所有文件都当作C++源程序编译,不管后缀名是否为.cpp 75 /Tp:将指定文件当作C++源程序编译,不管后缀名是否为.cpp 76 /U:去掉一个指定的前面定义的符号或常量 77 /u:去掉所有前面定义的符号或常量 78 /V:在编译的obj文件里嵌入版本号 79 /vd:禁止/允许构造函数置换 80 /vmb:选择指针的表示方法,使用这个开关,在声明指向某个类的成员的指针之前,必须先定义这个类 81 /vmg:选择指针的表示方法,使用这个开关,在声明指向某个类的成员的指针之前,不必先定义这个类,但要首先指定这个类是使用何种继承方法 82 /vmm:设置指针的表示方法为Single Inheritance and Multiple Inheritance 83 /vms:设置指针的表示方法为Single Inheritance 84 /vmv:设置指针的表示方法为Any class 85 /W:设置警告等级 86 /w:禁止所有警告 87 /X:阻止编译器搜索标准的include 目录 88 /Yc:创建预编译头文件(pch) 89 /Yd:在所有的obj文件里写上完全的调试信息 90 /Yu:在build过程中使用指定的预编译头文件 91 /YX:指示编译器若预编译头文件存在,则使用它,若不存在,则创建一个 92 /Z7:生成MSC7.0兼容的调试信息 93 /Za:禁止语言扩展(Microsoft Extensions to C 94 /Zd:调试信息只包含外部和全局的符号信息以及行号信息 95 /Ze:允许语言扩展(Microsoft Extensions to C 96 /Zg:为源文件里面定义的每个函数生成函数原型 97 /ZI:生成程序库文件(Pdb)并支持Edit and Continue调试特性 98 /Zi:生成程序库文件(pdb),包含类型信息和符号调试信息 99 /ZL:从obj文件里去掉缺省的库文件名 100 /Zm:设置编译器的内存分配xianzhi 101 /Zn:禁止浏览信息文件里面的封装 102 /Zp:设置结构成员在内存里面的封装格式 103 /Zs:快速检查语法错误-------------------------- vc所支持的文件类型 1 DSW:全称是Developer Studio Workspace,最高级别的配置文件,记录了整个工作空间的配置信息,她是一个纯文本的文件,在vc创建新项目的时候自动生成 2 DSP:全称是Developer Studio Project,也是一个配置文件,不过她记录的是一个项目的所有配置信息,纯文本文件 3 OPT:与DSW、DSP配合使用的配置文件,她记录了与机器硬件有关的信息,同一个项目在不同的机器上的opt文件内容是不同的 4 CLW:记录了跟ClassWizard相关的信息,如果丢失了clw文件,那么在Class View面板里就没有类信息 5 PLG:实际上是一个超文本文件,可以用Internet Explorer打开,记录了Build的过程,是一个日志型文件 6 RC:资源描述文件,记录了所有的资源信息,在资源编辑器里作的修改,实际上都是对RC文件的修改 7 RC2:附加的资源描述文件,不能直接资源编辑器修改,只能手工添加,可以用来添加额外的资源 8 RES:经过资源编辑器编译之后的资源文件,以二进制方式存放 9 SBR:编译器生成的浏览信息文件,在代码导航的时候非常有用,她需要在编译时指定/FR或者/Fr 开关 10 BSC:BSCMAKE.EXE将所有的SBR文件作为输入,经过处理之后输出一个BSC文件,在代码导航的时候实际用到的是BSC文件 11 ILK:当选定渐增型编译连接时,连接器自动生成ILK文件,记录连接信息 12 PDB:全称是Program DataBase,即程序数据库文件,用来记录调试信息,是一个相当重要的文件,没有他,程序无法正常调试 13 LIB:如果项目输出是Dll的话,一般会输出一个跟项目同名的Lib 文件,记录输出的函数信息 14 EXP:同Lib,是跟Dll一起生成的输出文件 15 PCH:全称是PreCompiled Header,就是预先编译好的头文件,在编译时指定/Yu 开关时编译器自动生成 2008-11-14 17:15 CL.exe 是控制 Microsoft C 和 C++ 编译器与链接器的 32 位工具。

完美实现无JVM计算机上的java程序运行

完美实现无JVM计算机上的java程序运行

完美实现JAVA程序的移植性和方便运行前言:本文主要告诉大家如何实现两个功能:①让java程序(class文件)像exe文件一样方便运行;②让java程序在没有安装java运行环境的计算机上运行。

本人曾经被这两个问题困扰良久,网上也有将java程序打包成可执行jar包甚至用第三者程序将jar包生成exe文件的说法。

很遗憾,也很惭愧,本人还是没有解决好这两个问题。

无意中发现了一个法子,简单而又实用,甚至不需要你去在计算机上设置环境变量等种种繁琐操作。

特以此分享。

一.java程序放在默认文件夹下:情况说明:此情况是说,你在写java源程序时没有使用package语句。

则源程序文件就放在默认文件夹下。

①在磁盘E上建立一个文件夹,命名为Java。

将自己计算机上的jre文件夹复制到该文件夹下。

原因说明:新建文件夹可以建在任意位置,我们写的java源程序将放在这个文件夹下。

Jre文件夹在jdk的安装目录下,里面包含了供java程序运行的平台。

我们要是想在一台没有安装JVM的计算机上运行java程序,就要将jre包随程序一起移植过去。

②新建一个txt文件,里面写java源程序代码。

③保存文件,并将文件改名为:Hello.java。

④在cmd中使用javac命令对该文件进行编译。

编译之后,java文件夹下就会多出一个Hello.class文件。

⑤在java文件夹下新建一个txt文件,具体内容如下:原因说明:jre文件夹中包含了运行java程序所需平台。

这句话的意思是调用当前目录(bat文件所在目录,这里指java文件夹所在目录)下的jre文件夹下的bin文件夹下java程序来运行当前目录下的Hello.class 文件。

注意:如果类名以小写字母开头,如hello.java下面的步骤将会出错。

建议大家写java源程序时,自定义类名以大写英文字母开头。

⑥存内容,将文件名改为以bat为后缀的名字,如:程序入口.bat⑦双击bat文件,就能看到结果。

使用jpackage将java程序打包成exe程序(不需要安装jdk即可运行)

使用jpackage将java程序打包成exe程序(不需要安装jdk即可运行)

使⽤jpackage将java程序打包成exe程序(不需要安装jdk即可运⾏)前⾔突然想到把java打包成windows上可以运⾏的程序,于是乎,在搜索引擎和各路博客以及官⽅⽂档的帮助下,终于实现了⽬标,虽然不算完美,但在这个过程中对maven打包过程,jdk打包jar的理解加深。

maven只是更⽅便的帮助我们打包的⼯具,于是开始尝试直接使⽤jdk打包。

接着尝试使⽤maven打包,再使⽤jpackage打包成exe安装包。

然后⼜希望打包成绿⾊版的exe(就是⽆需安装直接运⾏的),结果打包完发现⽂件太⼤,⽽且每次修改都要打包,时间太长。

尝试直接使⽤编译好的class运⾏java程序,修改完类就可以直接替换,⽆需打jar包和再次转成exe。

过程中⼜发现jpackage打包的整个⽂件有很多重复的dll⽂件,⼜发现了runtime⽂件夹。

想到使⽤jre可以直接运⾏java程序,⼜发现这些dll和jre中的⽂件⾼度重合,于是想到直接将jre和class直接打包到⼀起,使⽤脚本命令来启动java程序。

这样⼜使整个运⾏所需的⽂件夹⼤⼩直接减⼩了⼏⼗MB,打包⽂件从最开始的200+MB,最终缩⼩到了 70MB,哎,就是玩⼉。

1.安装wix 3.XX下载⼆进制包(wix311-binaries.zip)解压并添加根⽬录路径到环境变量path中(D:\Program\openjdk\wix)2.打包成便携执⾏程序()⽬录结构在空⽩处按住shift,单击右键,选择“在此处打开powershell窗⼝”执⾏.\jdk-14.0.1\bin\jpackage -i .\planewar --type app-image -n planewar --main-jar .\planewar\plane-war-1.0-SNAPSHOT.jar --vendor cy --verbose --win-console选项说明:# -i: 存放待打包资源的⽂件夹# -type: win下默认是exe,其他的有msi、app-image# -n: 打包后的程序名称# --main-jar 包含启动类(main)的jar包,如果jar包不是可执⾏的jar,则需要⼿动指定主类# --main-class ⼿动指定主类,例如: --main-class com.xxx.AppMain# --vendor 供应商信息(随便填)# --verbose 显⽰打包过程# --win-console 添加控制台输出3.打包成安装程序将需要打包的资源放进⽂件夹planewar执⾏打包.\jdk-14.0.1\bin\jpackage -i .\planewar -n planewar --main-jar .\planewar\plane-war-1.0-SNAPSHOT.jar --vendor cy --verbose --win-console --win-dir-chooser --win-shortcut选项说明:# -i 表⽰输⼊⽂件夹# -n 表⽰应⽤名称# --main-jar 指定jar包,需要jar已经指定main类,否则需要添加--main-class⼿动指定,如:--main-class com.demo.DemoApplication# --vendor 发⾏商信息# --verbose 显⽰打包执⾏过程# --win-console 使⽤控制台输出# --win-dir-chooser 选择安装位置# --win-shortcut 创建快捷⽅式#其他的选项如下:# –win-dir-chooser, 安装时添加 “选择安装路路径”# –win-shortcut, 安装后⾃动在桌⾯添加快捷键# –win-menu-group, 启动该应⽤程序所在的菜单组 (实测⽆效,但是必须有这条命令,没有–win-menu 会报311错误)# -update 2021-2-18: –win-menu-group 应该放在–win-menu 之后,否则⽆效。

java生成exe

java生成exe

编写java我用java编译helloworld.java生成.class文件,但每次想运行文件,悬赏分:20 - 解决时间:2007-6-9 15:35都要用java helloworld,不生成点击运行的exe文件,我要如何做永久生成点击运行的文件,具体步骤提问者:xs54168 - 一级最佳答案说简单一点//建一个类Test.java//再一个文本文件main.txt//main.txt中写入main-class:<空格> Test <加一个空行>//dos 到当前目录//执行jar cvfm mm.jar *.*//将生成可执行文件mm.jar 双双击运行--------------------------------------------------------有问题再看看下边的吧首先列表一下环境:D:\abc\myFrame.class(这个myFrame.class 就是我要运行的程序,当然里面必须包含有main方法啦,有一点还要申明:这个myFrame.class 里是没有打包的,也就是没有pachage 语句进行包申明)好了,开始做事吧在D:\abc 下面建立一个文件名字可以是任意的,什么阿猫,阿狗都没问题,而且有没有扩展名,也是没关系的,但你总不至于是exe 、jar 什么的吧?那你也太专牛角尖了吧,比如名字为:ddd.jjj 或fff 都没问题,我就给这个文件取名:xx.x好了现在的任务就是在你刚建立的文件里写点东西。

在里面写上:main-class:myFrame现在呢,就有N多需要注意的或不需要注意的地方了:1.main-class: 这些字呢,大小写是不区别的,但你不要给我把“-”给丢了!2.myFrame 千万不要写成myFrame.class ,而且myFrame 大小写敏感的!3.“main-class:myFrame” 这一行必须是单独一行的,而且这行不能是最后一行,文件最后留个空行,也许你什么都干得出来,你也可以不用空行,你却写上一些&U&()*^^&*%%*&^(^) 系统也懒得管你!4.最重要的,最容易忽略的,就是在main-class: 的后面必须有大于1的个数的空格,如:main-class: xx.x好了现在就开始用jar了首先打开ms-dos(开始里的运行输入cmd 回车)进入到D:\abc下面(cd d:\abc 回车)然后输入:jar cvfm mm.jar xx.x myFrame.class如: D:\abc\>jar cvfm mm.jar xx.x myFrame.class然后回车,应该就ok了!当然这个命令也可以有多种样式的写法,如:jar cvfm mm.jar xx.x *jar cvfm mm.jar xx.x *.*jar cvfm mm.jar xx.x *.class需要注意的地方是:xx.x 这个文件必须所有的要被包含的文件的前面,换句话就是必须紧跟在你要建立的jar文件名的后面,比如我这里就是mm.jar还有就是如过xx.x这个文件有扩展名就必须写上扩展名,没有就不写整行命令里面可以变动顺序的就只有你的那些要包含的程序文件(xx.x 不包含在内,它不是你的应用程序的一部分),比如你的应用程序要用到几个类(a1.class a2.class a3.class ) 命令可以这样:jar cvfm mm.jar xx.x a1.class a2.class a3.classjar cvfm mm.jar xx.x a1.class a3.class a2.classjar cvfm mm.jar xx.x a2.class a1.class a3.class......或者方便点:jar cvfm mm.jar xx.x *.class还有:cvfm 你照抄就好了不好改什么上面讲的都是没有用package 包机制的其实用包的程序也变化不大要注意的地方:比如文件位置为:D:\abc\nn\myFrame.class(myFrame.java里面开头一句是: package nn;看清楚上面我写的文件位置)你只要把nn\myFrame 看成是上面讲的myFrame 就一样了在D:\abc\>下运行jar cvfm ee.jar xx.x nn注意:1.是在abc下运行,不是在nn下!2.xx.x 文件是在abc下面,而不是在nn下面3.xx.x里面的main-class:myFrame 要换成main-class:nn/myFrame或main-class:nn.myFrame4.记得也要在main-class:........的后面行有空行或有内容的行(anything will ok)关于Java如何生成安装文件给用户的问题?悬赏分:10 - 解决时间:2007-1-13 11:41众所周知java需要JDK等运行环境才能允许?现在我用JBuilder做完了一个桌面C/S模式的应用程序只能用JBuilder运行...我如何不用再给用户去装JDK什么的给用户的时候用户只要直接点击下一步下一步就可以完成软件的安装并正常使用呢?提问者:yangxin114 - 一级最佳答案将Java应用程序本地编译为EXE的几种方法(推荐使用JOVE和JET)1. 从获得一个TowerJ编译器,该编译器可以将你的CLASS文件编译成EXE文件。

(三)Apk改之理(Apk IDE)使用常见问题~~~!

(三)Apk改之理(Apk IDE)使用常见问题~~~!

1.如何配置Java SDK?鉴于还有很多人不明白如何设置JDK,这里以安装jdk1.6为例,给出一个详细设置步骤:(1)先下载安装JDK1.6:点击这里进入下载JDK6,参考下面的图示下载jdk安装包(点击图片看大图)。

下载jdk1.6本帖隐藏的内容(2)安装jdk1.6,安装时注意它的安装路径,你也可以更改安装路径,假设安装路径为E:\Develop\JDK6。

安装时有二个部份选择安装,一个是JDK,一个是JRE(建议都装),二者的路径可以设置不同,主要是JDK的路径你记得最好,至于JRE随便装哪儿,不过建议都放在一起(如安装到E:\Develop\JDK6\jre,覆盖同名目录没什么问题)。

(PS:安装过程就不详述了,如果连安装都不会,我只能建议你先去学一些电脑的基本知识)(3)如果你照上面的步骤做的,重新打开APK改之理后,它一般就能直接找到JDK的安装路径了,不用再手动配置。

(4)如果没有自动配置好,或者你使用的是免安装绿色版的JDK,你可以手动配置JavaSDK 方法:在APK改之理主界面点菜单“工具-配置SDK”,点击“Java SDK(JDK)”安装路径后面的“浏览”按钮,找到JDK的安装目录(这个示例中就是E:\Develop\JDK6)。

(PS:如果你被提示“无效的安装目录”,若如此,请确保你所选择的目录下存在一个bin文件夹,且这个bin文件夹下包含java.exe、jarsigner.exe等程序。

)【注意】从2.4版开始不再支持jre,必须要jdk,因为jre相对jdk少了很多工具(如jre的bin目录下没有jarsigner.exe等),随着APK改之理的不断升级,有可能用到jdk中的更多工具,所以从2.4开始,下载安装一个jdk是必须的。

(5)Android SDK不是必要的,但配置方法与手动配置JDK类似,这里不详述。

2.在打开APK时,本想继续上次的修改但误点了重新编译,怎么办?本帖隐藏的内容(1)在使用apk改之理打开一个apk时,apk改之理会先去查看是否存在它的旧工作目录,如果存在会提示是否继续使用旧工作目录(如上图),也就是说这个apk之前修改过,如果本次你想继续上次的修改工作,那么按提示应该点“否”按钮,如果你误点了“是”按钮,也不用担心,因为Apk改之理在重新编译前会把旧工作目录清理到系统回收站,等待本次重新编译完成后,你可以直接从系统回收站还原出旧工作目录使用。

如何将JAVA程序打包成exe文件

如何将JAVA程序打包成exe文件
怎么将jar转成exe程序(要求转成的exe程序不需要jdk)
用专门将jar文件转换成.exe文件的软件,名称为:jsmooth-setup-0.9.7.exe方法如下:1,使用eclipse生成可执行的jar文件2,使用JSmooth生成exe文件(JSmooth的下载地址: /project/downloading.php)2.1 新建一个Jsmooth工程 2.1 在sketlon中选择“Console“ 或者 “Windowed“ 或者"web"2.2 在Executable中的配置: i. Executable Binary:填写目的输出源的名称。如test.exe. ii. Executable Icon :选择一个好看点的图标 iii. Current Driectory :.(表示当前工程目录,也就是你的test.exe的存储目录,当然也可行换成别的.) 2.3 在Applicationar包以及运行该jar文件所需要的类库(必须先做这步,这样才能选择下一步的main-class) ii. Main-Class:选中我们所需要运行的主类。 iii. 可选项Use an embedded jar:运行该exe时可能需要到的类库(这里只能有一个类库)。 2.4 在JVM Selection中的配置:(一般情况下,这步可以省略的) i. Minimum JVM Version:写一个需要运行该程序所需的最低的就JVM的版本,比如1.4 2.5 Compile:OK,编译成功后,在你的输出目录上就会有一个崭新的exe程序了。注意:即使后面的选项的没用,也得点击一下,否则不等.有的工具不是免费的,比较麻烦.我现在用的打包工具是NativeJ,比较容易使用.
幻影 6级 2009-03-06
EXE4J的效果比较差,

JAVA语言程序设计-国家开放大学电大学习网形考作业题目答案

JAVA语言程序设计-国家开放大学电大学习网形考作业题目答案

JAVA语言程序设计一、单选题1.()提供给上层应用进行开发和构建应用的基础类库。

A.JDKB.JREC.JVMD.Java应用正确答案: A2.Java程序在编译之后,以()方式被Java虚拟机执行。

A.源代码B.二进制C.字节码D.文本正确答案: C3.下列()移动开发平台使用Java语言作为官方推荐开发语言。

A.SymbianB.IOSC.WindowsD.Android正确答案: D4.Java语言中用来编译Java程序的命令是()。

A.java.exeB.javaw.exeC.javap.exeD.javac.exe正确答案: D5.下列()是合法的标识符。

modityPriceB.num_greenC.23667D.{printOut}正确答案: B6.下列()不是保留字A.byteB.returnC.num_blueD.private正确答案: C7.下列关于float类型float f=5.2的说法,正确的是()。

A.正确B.错误,精度不够,需要强制类型转换floatC.错误,变量声明错误D.错误,可以考虑使用int类型正确答案: C8.下列代码执行的结果中m和n的值分别为()。

int m = 50, n=160; int tmp =m; m=n; n=tmp 回答错误A.50/160B.50/50C.160/50D.160/160正确答案: C9.表达式29/3*3的值是()。

A.29B.27.999C.27D.27.0正确答案: C10.执行下列语句: int m=15; int val =m- -; val的值是()。

A.13B.14C.15D.16正确答案: C11.执行下列语句: int m=15; int val =--m; val的值是()。

A.13B.14C.15D.16正确答案: B12.编译运行以下代码段后,关于输出结果正确的是()。

public class Conditional{public static void main(String args[ ]){int x=4;System.out.println(“value is “+ ((x>4) ? 99.9:9));}}A.value is 99.9B.value is 9C.value is 9.0D.编译错误正确答案: C13.下列代码段运行结果为()。

java打包成可执行的jar或者exe的详细步骤

java打包成可执行的jar或者exe的详细步骤

java打包成可执⾏的jar或者exe的详细步骤下⾯介绍过程:在Eclipse下,程序能够正常运⾏.⽅法1:直接拷贝其它能运⾏的JAR⽂件中的MANIFEST.MF进⾏修改⽅法2:利⽤IDE⼯具,如Eclipse在⽣成JAR⽂件时⾃动⽣成MANIFEST.MF内容如下:复制代码代码如下:Manifest-Version: 1.0Main-Class: manager.ui.MainFrameClass-Path: ./lib/spring.jar ./lib/hibernate.jar ./lib/derby.jarSplashScreen-Imager: manager/resources/images/splash.jpg说明:Manifest-Version -指定清单⽂件的版本号Main-Class -指定程序运⾏的⼊⼝类。

注意:类名后不要加class扩展名Class-Path -指定⽀持库的路径。

“.”指程序运⾏⽬录,即导出的JAR包所在⽬录。

程序运⾏时依据Class-Path项的设置路径来查找⽀持库。

每⼀个⽀持库之间⽤空格隔开。

在这⾥使⽤了hibernate,spring,derby.注意:1.如果Java应⽤程序⽤到了⼀些Eclipse包,那么就必须将这些包也复制到程序运⾏⽬录,设置到Class-Path,否则程序将⽆法运⾏.引⽤了⼀些外部组件也需要如此设置,如hibernate,spring,derby.2. 除了⼊⼝类的包名和类名之外,其他设置项都不分⼤⼩写,⽐如:Class-Path写成class-path或CLASS-PATH也可以,swt.jar写成SWT.JAR也⾏。

3.类名后不要加class扩展名4.每⼀⾏的':'后都有⼀个空格,如Class-Path:<空格>./lib/spring.jar5.Class-Path中.引⼊的JAR⽂件每⾏不得超过19个,否则会报错.但在让⼈意外的是每⾏只有前9个有效,故将所有同类型的JAR ⽂件做成⼀个JAR⽂件.如我这⾥的spring.jar,hibernate.jar,derby.jar都是同类JAR⽂件的组合.在spring的 'sessionFactory' bean的配置中则要这样写(与程序中ClassPathXmlApplicationContext对应)复制代码代码如下:manager/entity/MyFile.hbm.xmlmanager/entity/FileType.hbm.xml...1.右键单击项⽬名,在弹出菜单中选择“Export”。

(三)Apk改之理(ApkIDE)使用常见问题~~~!

(三)Apk改之理(ApkIDE)使用常见问题~~~!

(三)Apk改之理(ApkIDE)使⽤常见问题~~~!1.如何配置Java SDK?鉴于还有很多⼈不明⽩如何设置JDK,这⾥以安装jdk1.6为例,给出⼀个详细设置步骤:(1)先下载安装JDK1.6:点击这⾥进⼊下载JDK6,参考下⾯的图⽰下载jdk安装包(点击图⽚看⼤图)。

下载jdk1.6本帖隐藏的内容(2)安装jdk1.6,安装时注意它的安装路径,你也可以更改安装路径,假设安装路径为E:\Develop\JDK6。

安装时有⼆个部份选择安装,⼀个是JDK,⼀个是JRE(建议都装),⼆者的路径可以设置不同,主要是JDK的路径你记得最好,⾄于JRE随便装哪⼉,不过建议都放在⼀起(如安装到E:\Develop\JDK6\jre,覆盖同名⽬录没什么问题)。

(PS:安装过程就不详述了,如果连安装都不会,我只能建议你先去学⼀些电脑的基本知识)(3)如果你照上⾯的步骤做的,重新打开APK改之理后,它⼀般就能直接找到JDK的安装路径了,不⽤再⼿动配置。

(4)如果没有⾃动配置好,或者你使⽤的是免安装绿⾊版的JDK,你可以⼿动配置JavaSDK ⽅法:在APK改之理主界⾯点菜单“⼯具-配置SDK”,点击“Java SDK(JDK)”安装路径后⾯的“浏览”按钮,找到JDK的安装⽬录(这个⽰例中就是E:\Develop\JDK6)。

(PS:如果你被提⽰“⽆效的安装⽬录”,若如此,请确保你所选择的⽬录下存在⼀个bin⽂件夹,且这个bin⽂件夹下包含java.exe、jarsigner.exe等程序。

)【注意】从2.4版开始不再⽀持jre,必须要jdk,因为jre相对jdk少了很多⼯具(如jre的bin⽬录下没有jarsigner.exe等),随着APK改之理的不断升级,有可能⽤到jdk中的更多⼯具,所以从2.4开始,下载安装⼀个jdk是必须的。

(5)Android SDK不是必要的,但配置⽅法与⼿动配置JDK类似,这⾥不详述。

JAVA控制台命令详解

JAVA控制台命令详解

JAVA控制台命令详解(一)命令概览javac:Java编译器,将Java源代码换成字节代java:Java解释器,直接从类文件执行Java应用程序代码appletviewer(小程序浏览器):一种执行HTML文件上的Java小程序类的Java浏览器javadoc:根据Java源代码及其说明语句生成的HTML文档jdb:Java调试器,可以逐行地执行程序、设置断点和检查变量javah:产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件Javap:Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义jar:多用途的存档及压缩工具,是个java应用程序,可将多个文件合并为单个JAR归档文件。

htmlConverter——命令转换工具。

native2ascii——将含有不是Unicode或Latinl字符的的文件转换为Unicode编码字符的文件。

serialver——返回serialverUID。

语法:serialver[show]命令选项show是用来显示一个简单的界面。

输入完整的类名按Enter键或"显示"按钮,可显示serialverUID。

(二)命令详细介绍补充详细:1.javac.exe用法:javac<选项><源文件>可能的选项包括:-g生成所有调试信息-g:none生成无调试信息-g:{lines,vars,source}生成只有部分调试信息-O优化;可能妨碍调试或者增大类文件-nowarn生成无警告-verbose输出关于编译器正在做的信息-deprecation输出使用了不鼓励使用的API的源程序位置-classpath<路径>指定用户类文件的位置-sourcepath<路径>指定输入源文件的位置-bootclasspath<路径>覆盖自举类文件的位置-extdirs<目录(多个)>覆盖安装的扩展类的位置-d<目录>指定输出类文件的位置-encoding<编码>指定源文件中所用的字符集编码-target<版本>生成指定虚拟机版本的类文件-help Print a synopsis of standard options2.Java.exeJava在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOME\bin\java–option来启动,-option为虚拟机参数,JAVA_HOME为JDK安装路径,通过这些参数可对虚拟机的运行状态进行调整,掌握参数的含义可对虚拟机的运行模式有更深入理解。

C语言程序设计第1章-C语言概述课件

C语言程序设计第1章-C语言概述课件

1.2.2 Visual C++ 6.0开发环境介绍(续)
图1-8 新建源文件
图1-8 新建源文件
1.2.2 Visual C++ 6.0开发环境介绍(续)
5) 点击“确定”按钮以后,在窗口左边的工作区会看到两个选项卡: ClassView和 FileView。一般默认为ClassView,点击FileView,可以才从ClassView 切换到FileView选项卡。逐步点击工作区p1工程下面的“+”号,可以 在Source Files目录下看到刚才新建的1-1.c源文件,这个时候可以在 右边的程序编辑窗口中输入源代码,如下图1-9所示。
1.1.1 C语言的发展
C语言是国际上流行的计算机高级程序设计语言之一。与其他高 级语言相比,C语言的硬件控制能力和运算表达能力强,可移植性 好,效率高(目标程序简洁,运行速度快)。因此应用面非常广, 许多大型软件都是用C语言编写的。
艾伦.佩利(Alan J.Perlis)在巴黎举行的全世界一流软件专家参加 的讨论会上,发表了“算法语言Algol 60”报告,确定了程序设计语言 Algol 60;1962年,艾伦.佩利又对Algol 60进行了修正;1963年,英 国剑桥大学在ALGOL语言的基础上进行了改进,推出CPL语言; 1967 年剑桥大学的马丁·理查德对CPL简化,产生了BCPL语言; 1970年美国 贝尔实验室的肯·汤姆逊对BCPL语言进行了修改,取其
1.2.2 Visual C++ 6.0开发环境介绍(续)
图1-9 新建源文件
图1-9 新建源文件
1.2.2 Visual C++ 6.0开发环境介绍(续)
注意:工作空间可以包含多个工程,工程又可以包含多个程序 文件,工程与工程之间相互不影响,工作空间类似于文件夹,工程 类似于文件夹中的文件。

将Java的class文件转为EXE文件的八种方法

将Java的class文件转为EXE文件的八种方法

5. 使用IBM AlphaWorks提供的一个高性能Java编译器,该编译器可以从下面的地址获得:
/tech/hpc
注:没有试过
6. JET是一个优秀的Java语言本地编译器。该编译器可以从这个网站获得一个测试版本:
/jet.html
测试版本:
/jet.html
7. Instantiations公司的JOVE
/jove/...ejovesystem.htm
JOVE公司合并了以前的SuperCede,一个优秀的本地编译器,现在SuperCede
//hello.java/
package hello;
public class hello{
public static void main(String s[]){
System.out.println("Hello, Exe file!");
}
}
编译成class文件,然后打开Jbuilder.config文件,作相应的修改:
至此,通过修改JBuilder来使用exe文件启动自己的Java应用程序已经完成了。
但是好玩的地方并不在这个地方,下面的小技巧可能更有趣,将Jar文件打包进入exe文件!
假设利用上面的文件,生成hello.jar包,
jar cvf hello.jar hello*.class
然后将jar包附加到JBuilder.exe后面去,
已经不复存在了。
8. JToEXE
Bravo Zulu Consulting, Inc开发的一款本地编译器,本来可以从该公司的
网页上免费下载的,不过目前在该公司的主页上找不到了

exe4j 生成原理

exe4j 生成原理

exe4j 生成原理【exe4j简介】exe4j是一款流行的Java库,它可以将Java代码编译成独立的可执行文件(.exe),使得Java程序在没有Java运行环境的情况下也能正常运行。

这对于需要在没有Java环境的地方部署应用程序的人来说非常方便。

exe4j的生成原理和优势受到了许多开发者的关注。

【exe4j生成原理】exe4j生成的原理可以分为以下几个步骤:1.编译:首先,将Java源代码编译成字节码文件(.class)。

2.打包:使用exe4j将编译后的字节码文件打包成一个新的类文件(.java),这个类文件包含了原始Java代码的所有信息,但采用了特殊的格式,以便后续处理。

3.转换:exe4j将特殊格式的类文件转换为可执行文件(.exe)。

这个过程涉及到对类文件中的代码进行优化、混淆和压缩等操作,以提高可执行文件的大小和运行效率。

4.生成:exe4j在转换过程中还会生成一个资源文件(.res),其中包含了可执行文件所需的资源,如图像、字体等。

5.编译与链接:最后,exe4j将转换后的可执行文件(.exe)与资源文件(.res)编译和链接成最终的运行库,以便在目标系统上运行。

【exe4j的优势与应用场景】exe4j的优势主要体现在以下几点:1.简化部署:exe4j可以将Java程序打包成一个独立的文件,无需额外安装Java运行环境,方便用户在各种操作系统上运行。

2.提高运行效率:exe4j对代码进行了优化、混淆和压缩,使得生成的可执行文件具有较快的运行速度。

3.跨平台:exe4j支持多种操作系统,包括Windows、Linux和Mac OS 等。

4.兼容性:exe4j生成的可执行文件可以兼容32位和64位系统。

应用场景主要包括:1.需要跨平台部署的Java应用程序。

2.希望降低用户安装门槛的应用程序。

3.在没有Java运行环境的地方需要运行Java程序的场景。

【如何使用exe4j】要使用exe4j,你需要遵循以下步骤:1.下载并安装exe4j库。

Java生成Class并打包成可执行Jar文件

Java生成Class并打包成可执行Jar文件

Java生成Class并打包成可执行Jar文件共分两步:1. 生成Class文件,可以通过命令行来测试调用执行2. 将Class文件打包成Jar文件下面说明一下具体步骤:1.GeneXus中创建Procedure并配置属性2.编译之后进入web目录3.打开CMD命令行窗口,定位web目录4.通过java命令行执行生成的classCMD输入并执行代码java -cpgxclassR.jar;gxcommon.jar;log4j-core-2.11.2.jar;log4j-api-2.11.2.jar;commons-io-2.2. jar;joda-time-2.8.2.jar; com.testjava.atestjavacmd5.创建manifest.txt文件准备打包在web目录下创建文件manifest.txt,写入下列文本并保存Manifest-Version: 1.0Class-Path: gxclassR.jar gxcommon.jar log4j-core-2.11.2.jar log4j-api-2.11.2.jar commons-io-2.2.jar joda-time-2.8.2.jarMain-Class: com.testjava.atestjavacmd*最后有一行回车不能去掉6.通过jar命令打包jar文件CMD输入并执行代码"D:\Program Files\Java\jdk1.8.0_191\bin\jar.exe" cvfm testjavacmd.jar manifest.txt com\testjava\atestjavacmd.class com\testjava\GXcfg.class com\testjava\client.cfg"D:\Program Files\Java\jdk1.8.0_191\bin\jar.exe"是我本机jdk安装目录下的jar.exe 程序,按自己的环境修改7.在web目录下查看打包好的jar文件8.通过java命令测试执行jarCMD输入并执行代码java -jar testjavacmd.jar正确执行并输出信息:[2019/10/13 16:11:07.004]: [ATestJavaCmd] has been executed.9.示例XPZTestJavaCmd.zip(1.71 KB, 下载次数: 1)。

如何批量将class文件反编译成java文件

如何批量将class文件反编译成java文件

如何批量将class⽂件反编译成java⽂件
Java jad下载下来解压后有两个⽂件,⼀个exe⽂件和⼀个帮助⽂件,为了⽅便使⽤,直接将exe⽂件放到JDK的bin⽬录⾥,这样做是为了能够执⾏exe⽂件(不⽤在环境变量⾥⾯配置),在C盘建⽴两个⽂件夹⼀个叫src,⼀个叫classses,将所有的class⽂件拷⼊classes⽂件夹中。

然后打开cmd(快捷键:windows+R,输⼊cmd)在控制台输⼊jad.exe -r -ff -d c:\src -s java -8 c:\classes\**\*.class
其中-r 表⽰恢复源⽂件的⽬录结构,-ff 表⽰将类属性定义放在类⽅法定义之前, -d 表⽰输出⽬录,-s 表⽰⽂件的扩展名,-8表⽰防⽌乱码问题,c:\src表⽰把编译好的class⽂件存放在C盘上的src⽂件夹⾥⾯并且存放在对应位置,c:\classes\**\*.class表⽰把位于C盘的classes⽂件夹中的所有class⽂件都反编译成java⽂件。

回车后会有相应⽣成java⽂件的执⾏过程提⽰。

如下图所⽰
到此反编译完成。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
d。
3。windows executabe中写上你要生成的exe文件的名字,current directory不用写,因为这是
console wrap 是找非同一级
目录下资源用的。最后选择图标。jip,gif,PNG的图都可以,一般生成32*32的图标。
用JSmooth将jar文件生成exe文件- -
上次说了怎样来生成可执行jar文件,这次趁热打铁将一下用JSmooth把jar文件转成可执行exe文件。
这个很容易,roger就大体说一说吧。
JSmooth是免费软件,可从下面网址下载:
/index.php
4。java applecation中先在classpath中选择jar或zip文件,注意要是上次roger说的那种可执行的。
然后在main-class中选择主类名,自己写也行,但要写全(包括package)。如果有参数就写上数。
5。剩下的3个选项卡基本不用写了,主要是设置程序要求的jvm最低和最高版本,出错时的提示信息,
安装十分简单,按next到finish就行了。roger装的是0.9.6版本的,操作很简单,如下。
1。start --> programs --> JSmooth0.9.6 --> JSmoothGen
界面有点土,但比其以前的版本已经不错了。
2. 从第一个选择卡开始--skeleton,如果是需要标准输入输出的程序就选择console,如果是window界面
要求的最大,最小内存,System.getProperty() 方法需要的参数属性等。JSmooth有manul手册
写的很详细,翻翻就知道了。
6。最后按那个齿轮按钮或project-->create exe,就生成了exe文件。project --〉run exe一下看看效 果。
相关文档
最新文档