一,下载inno setup
二,下载jre..去java官方下载
.这个是我将要打包的目录(netbeans编译后的dist文件夹)
然后把jre和相关的东东放进去,然后在里面加入一个go.cmd(bat)(名字随意啦)
Java代码
@echo off
echo 请稍后..安装Java运行环境ing
'如果没有java命令 则安装jre
java||jre-6u20-windows-i586.exe /q /norestart
start /MIN javaw -jar AutoCheckOut.jar
代码就像这样
解释下这里..
java||jre-6u20-windows-i586.exe /q /norestart
意思是..如果java这个命令执行不成功..则执行后面那句jre-6u20-windows-i586.exe /q /norestart
这句话是在安静模式下安装jre,没有对话框
这部完成后
start /MIN javaw -jar AutoCheckOut.jar
可以让我们的java程序在一个没有控制台的方式运行
然后你的目录大概就是这样的
好了.改下一步了
四,用inno创建setup.exe
打开inno
用向导创建
之后一步一步到这里
注意添加文件和文件夹 你添加的部分都是作为应用程序的根目录
这里改成我们刚才写的cmd(bat)文件
然后继续向前.按照你的喜好来改设置
最后到这里的时候
我们还要改小小的地方..不然的话..
1.[Files]里面
Source: "E:\JAVA\AutoCheckOut\dist\lib\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
这一行 可以看到吧lib目录加到根目录区了..所以要改一下
Source: "E:\JAVA\AutoCheckOut\dist\lib\*"; DestDir: "{app}\lib\"; Flags: ignoreversion recursesubdirs createallsubdirs
2.[Icons]里面
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
需要多加一行
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}";WorkingDir: "{app}"
加这行是为了让cmd运行时有正常的工作目录
⑵ 如何用JAVA把内存里的二进制文件打包成ZIP包
在JDK中有一个zip工具类:<blockquote>java.util.zip Provides classes for reading and writing the standard ZIP and
GZIP file formats.</blockquote>使用此类可以将文件夹或者多个文件进行打包压缩操作。在使用之前先了解关键方法:<blockquote>ZipEntry(String name) Creates a new zip entry with the specified name.</blockquote>使用ZipEntry的构造方法可以创建一个zip压缩文件包的实例,然后通过ZipOutputStream将待压缩的文件以流的形式写进该压缩包中。具体实现代码如下:<pre t="code" l="java">import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
/**
* 将文件夹下面的文件
* 打包成zip压缩文件
*
* @author admin
*
*/
public final class FileToZip {
private FileToZip(){}
/**
* 将存放在sourceFilePath目录下的源文件,打包成fileName名称的zip文件,并存放到zipFilePath路径下
* @param sourceFilePath :待压缩的文件路径
* @param zipFilePath :压缩后存放路径
* @param fileName :压缩后文件的名称
* @return
*/
public static boolean fileToZip(String sourceFilePath,String zipFilePath,String fileName){
boolean flag = false;
File sourceFile = new File(sourceFilePath);
FileInputStream fis = null;
BufferedInputStream bis = null;
FileOutputStream fos = null;
ZipOutputStream zos = null;
if(sourceFile.exists() == false){
System.out.println("待压缩的文件目录:"+sourceFilePath+"不存在.");
}else{
try {
File zipFile = new File(zipFilePath + "/" + fileName +".zip");
if(zipFile.exists()){
System.out.println(zipFilePath + "目录下存在名字为:" + fileName +".zip" +"打包文件.");
}else{
File[] sourceFiles = sourceFile.listFiles();
if(null == sourceFiles || sourceFiles.length<1){
System.out.println("待压缩的文件目录:" + sourceFilePath + "里面不存在文件,无需压缩.");
}else{
fos = new FileOutputStream(zipFile);
zos = new ZipOutputStream(new BufferedOutputStream(fos));
byte[] bufs = new byte[1024*10];
for(int i=0;i<sourceFiles.length;i++){
//创建ZIP实体,并添加进压缩包
ZipEntry zipEntry = new ZipEntry(sourceFiles[i].getName());
zos.putNextEntry(zipEntry);
//读取待压缩的文件并写进压缩包里
fis = new FileInputStream(sourceFiles[i]);
bis = new BufferedInputStream(fis, 1024*10);
int read = 0;
while((read=bis.read(bufs, 0, 1024*10)) != -1){
zos.write(bufs,0,read);
}
}
flag = true;
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
throw new RuntimeException(e);
} catch (IOException e) {
e.printStackTrace();
throw new RuntimeException(e);
} finally{
//关闭流
try {
if(null != bis) bis.close();
if(null != zos) zos.close();
} catch (IOException e) {
e.printStackTrace();
throw new RuntimeException(e);
}
}
}
return flag;
}
public static void main(String[] args){
String sourceFilePath = "D:\\TestFile";
String zipFilePath = "D:\\tmp";
String fileName = "file";
boolean flag = FileToZip.fileToZip(sourceFilePath, zipFilePath, fileName);
if(flag){
System.out.println("文件打包成功!");
}else{
System.out.println("文件打包失败!");
}
}
}
⑶ JAVA 如何使用jar打包当前目录下的 所有文件夹 及 所有文件
不是 *.* 而是 *
上边回答的看清题了么
给以后看到该题的人 防止误导
⑷ 如何将java程序打包成exe需要什么
开始打包,Simulate(Java项目)-鼠标右键-Export
弹出窗口,选择“ file”,点击“Next”
取消勾选“config”和“lib”目录,以及eclipse生成的项目配置文件“.classpath”和“.project”,点击“Next”
一切默认,点击“Next”
在弹出窗口中,选择我们自己创建的MANIFEST.MF文件,点击“Finish”
我的MANIFEST.MF文件内容为:
Manifest-Version: 1.0
Main-Class: bing.Main
Class-Path: . lib/ojdbc14.jar lib/poi-2.5.1.jar lib/jbcl.jar lib/JTattoo.jar lib/liquidlnf.jar
Created-By: IceWee
通过指定“Main-Class”来达到可执行jar文件的目的。其实我们最终是将项目打包成exe,Class-Path可以不指定,在打包exe的时候还要指定classpath的。
第二步,将项目打包成exe,这里要明确一点,并不是把所有的文件都打包成一个exe,资源文件是不能包进去的,往下看↓
首先,在任意目录创建一个文件夹,最好命名和项目名相同,我在F盘创建了一个“Simulate”文件夹,之后将所有的资源文件以及我们生成的可执行jar文件(我的Simulate.jar)都拷贝到这个文件夹里,config目录和lib目录,如果你怕执行该程序的机器上没安装jre,那么你需要将自己机器上的jre目录也拷贝进来,我安装的jre5,最后的目录结构:
打开exe4j,跳过欢迎,直接点击左侧导航的第二项,因为我们已经提前将java项目打包成可执行jar文件了
⑸ 关于Java打包路径问题
动态加载配置文件信息,你可以写一个以.properties为扩展名的文件,里面存放key=value的,
读key,自然版获取value了,java中有Properties类,专门权读取这个文件的,你上述代码就是说加载那个文件获取流,然后再用我说的类操作。
比如你的文件叫conf.properties,那路径就写
this.getClass.getRecourceAs Stream("/conf.properties");
该配置文件放到源文件夹下(通常src),不论是web项目还是java项目
⑹ 如何使用java压缩文件夹成为zip包
在JDK中有一个zip工具类:
java.util.zip Provides classes for reading and writing the standard ZIP and
GZIP file formats.
使用此类可以将文件夹或者多个文件进行打包压缩操作。
在使用之前先了解关键方法:
ZipEntry(String name) Creates a new zip entry with the specified name.
使用ZipEntry的构造方法可以创建一个zip压缩文件包的实例,然后通过ZipOutputStream将待压缩的文件以流的形式写进该压缩包中。具体实现代码如下:
importjava.io.BufferedInputStream;
importjava.io.BufferedOutputStream;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileNotFoundException;
importjava.io.FileOutputStream;
importjava.io.IOException;
importjava.util.zip.ZipEntry;
importjava.util.zip.ZipOutputStream;
/**
*将文件夹下面的文件
*打包成zip压缩文件
*
*@authoradmin
*
*/
publicfinalclassFileToZip{
privateFileToZip(){}
/**
*将存放在sourceFilePath目录下的源文件,打包成fileName名称的zip文件,并存放到zipFilePath路径下
*@paramsourceFilePath:待压缩的文件路径
*@paramzipFilePath:压缩后存放路径
*@paramfileName:压缩后文件的名称
*@return
*/
publicstaticbooleanfileToZip(StringsourceFilePath,StringzipFilePath,StringfileName){
booleanflag=false;
FilesourceFile=newFile(sourceFilePath);
FileInputStreamfis=null;
BufferedInputStreambis=null;
FileOutputStreamfos=null;
ZipOutputStreamzos=null;
if(sourceFile.exists()==false){
System.out.println("待压缩的文件目录:"+sourceFilePath+"不存在.");
}else{
try{
FilezipFile=newFile(zipFilePath+"/"+fileName+".zip");
if(zipFile.exists()){
System.out.println(zipFilePath+"目录下存在名字为:"+fileName+".zip"+"打包文件.");
}else{
File[]sourceFiles=sourceFile.listFiles();
if(null==sourceFiles||sourceFiles.length<1){
System.out.println("待压缩的文件目录:"+sourceFilePath+"里面不存在文件,无需压缩.");
}else{
fos=newFileOutputStream(zipFile);
zos=newZipOutputStream(newBufferedOutputStream(fos));
byte[]bufs=newbyte[1024*10];
for(inti=0;i<sourceFiles.length;i++){
//创建ZIP实体,并添加进压缩包
ZipEntryzipEntry=newZipEntry(sourceFiles[i].getName());
zos.putNextEntry(zipEntry);
//读取待压缩的文件并写进压缩包里
fis=newFileInputStream(sourceFiles[i]);
bis=newBufferedInputStream(fis,1024*10);
intread=0;
while((read=bis.read(bufs,0,1024*10))!=-1){
zos.write(bufs,0,read);
}
}
flag=true;
}
}
}catch(FileNotFoundExceptione){
e.printStackTrace();
thrownewRuntimeException(e);
}catch(IOExceptione){
e.printStackTrace();
thrownewRuntimeException(e);
}finally{
//关闭流
try{
if(null!=bis)bis.close();
if(null!=zos)zos.close();
}catch(IOExceptione){
e.printStackTrace();
thrownewRuntimeException(e);
}
}
}
returnflag;
}
publicstaticvoidmain(String[]args){
StringsourceFilePath="D:\TestFile";
StringzipFilePath="D:\tmp";
StringfileName="12700153file";
booleanflag=FileToZip.fileToZip(sourceFilePath,zipFilePath,fileName);
if(flag){
System.out.println("文件打包成功!");
}else{
System.out.println("文件打包失败!");
}
}
}
⑺ 怎么用java打包多个文件夹和文件呢看清楚,是多个文件夹和文件。
两重for循环,大体逻辑如下:
for( int i =0 ; i < 大文件夹数; i ++){
String name = 生成大文件夹名;版
File parent = new File(目录 + “权/" + name);
parent.mkdir();
for( int j = 0; j < 30; j ++){
String subName = 生成小文件夹名;
File child = new File(parent, subName);
child.mkdir();
}
}
⑻ 怎样java 打包成exe文件
右击你的项目,抄选择Export:
⑼ 如何打包JAVA游戏文件
装一个j2me的插件或者MTJ自带打包工具直接项目点右键会有一个Mobile tools for java有一个creat package的选版项就是打包生成权后的jar包在你项目存储目录的deployed文件夹里面