Java 怎么生成双击可以直接运行的程序啊

解决方案 »

  1.   

    jar,或者通过exe4j来生成.exe程序。
      

  2.   

    具体怎么弄啊 ,打包成jar我会,要不要用IDE工具的啊,直接在JDK下怎么弄呀
      

  3.   

    还是用jar比较好,可以在不同的操作系统运行,打成exe就只能在windows运行了。。
      

  4.   

    Eclipse里装个fatjar插件,用起来很简单。
      

  5.   

    这个问题也成了 Java 版的月经帖!
      

  6.   

    可以的,要打包吧,需要写一个main()函数吧
      

  7.   

    看我这篇文章,http://blog.csdn.net/zhtsuc/archive/2010/03/20/5400013.aspx
      

  8.   

    别弄成exe文件了,也使弄成exe文件也需要装有jre运行环境
    除非弄成安装程序,在安装的时候在电脑上装一个小型的jre运行环境,这样即使一个小程序也要做成蛮大的安装程序
      

  9.   

    打成jar包就行了,用eclipse导出成可运行的jar包
      

  10.   

    写个批处理程序,参考tomcat的startup.bat
      

  11.   

    导出jar,加Manifest,设mainclass
    或者exe4j
      

  12.   

    打成jar包吧,就算你打成exe,运行的时候一样是由exe解成jar包运行。可以用ant自动打包,每次要打包的时候运行下ant的xml文件就成了,给你发给ant的例子:<?xml version="1.0" encoding="GBk"?><project name="project" default="init" basedir=".">

    <property name="project_name" value="mnzx" description="工程名"/>
    <property name="srcDir" value="${basedir}" description="java资源包"/>
    <property name="classDir" value="${basedir}/classes" description="编译的class存放路径"/>
    <property name="buildDir" value="${basedir}/build" description="生成jar文件的路径"/>
    <property name="libDir" value="${basedir}/build/" description="库文件的路径"/>
    <property name="jar" value="${buildDir}/${project_name}_no_obf.jar" description="jar文件路径"/>
    <property name="obfjar" value="${buildDir}/${project_name}/${project_name}.jar" description="混淆jar文件路径"/>
    <property name="obfuscationlog" value="${classDir}/${project_name}_obf_log.xml" description="混淆jar文件日志路径"/>
    <property name="resourceDir" value="${buildDir}/${project_name}/resource" description="资源文件存放路径"/>
    <property name="mnzxDir" value="${buildDir}/${project_name}" description="打包后的完整程序存放路径"/> <property name="Manifest" value="${buildDir}/MANIFEST.MF" description="清单文件路径"/>
    <property name="CreatedBy" value="SYTZ" description="创建者"/>
    <property name="MainClass" value="TzJtMnZx.TzMainCL" description="主类"/>


        <!-- 设置Ant任务的初始化工作 -->
        <target name="init" depends="obfuscate" description="设置Ant任务的初始化工作">     <mkdir dir="${resourceDir}" />   
         <copy   todir="${resourceDir}" >   
                    <fileset  dir="${basedir}/resource">   
                    </fileset>   
         </copy>   
      
         <copy   todir="${mnzxDir}" >   
                    <fileset  dir="${basedir}/resource/bat">   
                    </fileset>   
         </copy>  
        
         <delete dir="${classDir}" includeEmptyDirs="true" />
         <delete file="${Manifest}" />
        
        </target>    <!-- 清理垃圾 建立目录 -->
        <target name="build" description="清理垃圾 建立目录">
        
          <delete dir="${classDir}" includeEmptyDirs="true" />
          <mkdir dir="${classDir}" />
           <delete dir="${buildDir}" includeEmptyDirs="true" />
           <mkdir dir="${buildDir}" />
          <mkdir dir="${mnzxDir}" />
        
        </target>

        <!-- 编译 -->
        <target name="compile" depends="build" description="编译">       <javac srcdir="${srcDir}" destdir="${classDir}">
            <classpath refid="master-classpath"/>
           </javac>
         <delete dir="${classDir}\dog" includeEmptyDirs="true" />
        </target>

    <!-- 创建清单文件 -->
    <target name="Manifest" description="创建清单文件">

            <manifest file="${Manifest}">          
                <attribute name="Main-Class" value="${MainClass}" />
             <attribute name="Created-By" value="${CreatedBy}" />
             <!--attribute name="Class-Path" value="resource/library/j3dcore.jar
             resource/library/j3dutils.jar
             resource/library/Loader3DS1_2.jar 
             resource/library/swingcalendar.jar 
             resource/library/jdom.jar"/--> <!-- 库文件的系统路径 -->
            
            </manifest>

    </target>

    <!-- 库文件路径清单 -->
    <path id="master-classpath" description="库文件路径清单">         <fileset dir="${basedir}" id="project_lib">  
                <include name="j3dcore.jar"/>
             <include name="j3dutils.jar"/>
             <include name="Loader3DS1_2.jar"/>
             <include name="swingcalendar.jar"/>
                <include name="jdom.jar"/>
             <!--include name="yguard.jar"/-->
            </fileset>     </path>    <!-- 打包 -->
        <target name="jar" depends="compile,Manifest" description="打包">        <!--copy todir="${buildDir}">            <fileset refid="project_lib"/>        </copy-->
      
           <jar jarfile="${jar}" basedir="${classDir}" manifest="${Manifest}">
           
           </jar>    
        </target>

    <!-- 混淆 -->
        <target name="obfuscate" depends="jar" description="混淆">     <taskdef name="yguard" classname="com.yworks.yguard.YGuardTask" classpath="yguard.jar"/>
        
         <yguard>
            
             <inoutpair in="${jar}" out="${obfjar}"/>         <rename mainclass="${MainClass}" replaceClassNameStrings="true" logfile="${obfuscationlog}">           <keep>             <!--package>
                   <patternset>               
                    <include name="javax.*"/>
                    <include name="org.*"/>
                    <include name="com.*"/>
                    <include name="sz.*"/> 
                   </patternset>
                 </package-->
                 <!--class>
                   <patternset>
                   
                     <include name="dog."/>
                
                   </patternset>
                 </class-->
             
               </keep>
             
             </rename>
           </yguard>
        </target></project>
      

  13.   

    eclipse可以打成jar包,然后就可以直接双击运行了
      

  14.   

    楼主可以分两步做,我自己也是这样弄的。
    第一步:可以先下载一个net.sf.fjep.fatjar_0.0.25包,解压后放到eclipse的plugins目录下,然后重启eclipse,这个时候你右击工程的时候,就会出现一个绿色的“+”的符号,点那个就可打成jar包了。
    第二步:下载一个叫做exe4j的软件,具体用法可以百度一下,按提示往下操作就可以生成.exe文件了。
      

  15.   

    建一个目录,作为打包的目录,比如ring目录,在这个目录里建一个java的目录,把jre目录下的bin和lib复制到该目录,然后在ring目录下再新建一个lib的目录,把你的项目用到的jar和你自己写的jar都放到该目录,下面在ring目录下建二个bat文件第一个命名为setenv.bat,文件的内容是:set cp=%cp%;%1第二个bat文件,名字可以随便起,到时候运行项目只要运行这个bat就可以了,内容是:@echo off
    set cp=
    for %%i in (".\lib\*.jar") do call setenv.bat %%i
    for %%i in (".\jre\lib\*.jar") do call setenv.bat %%irem 这一行最后是你的项目的启动类
    start .\java\bin\java -classpath %cp% ringpro.Frame1
    ok,大功告成,呵呵