写了一个程序,给项目打包后总是有 ClassNotFound的异常,
打开jar后发现里面根本就没有所需的库文件,请问如何让
NetBeans打包时一起把需要使用的库文件也打进去啊?

解决方案 »

  1.   

    我用过NetBeans出现的是寻找的主类错了打开MANIFEST.MF文件会发现有下列两行
      manifest.mf   的内容:   
      Main-Class:   主类名确认下主类名。
      

  2.   

    把项目中用到的库添加到工程的Library中,然后build project的时候会自动打包到*.war文件中
      

  3.   

    在项目下建立一个lib包,把用到的jar文件放到里面
    在项目的库属性中将jar包加入
      

  4.   

    如果用Eclipse的话,可以将project->export为可运行的jar,选择入口mian方法,同时可以选择是否将project中用到的jar一并打包,默认是打的。很好用,我一直这么用。
    使用时 
    java -jar jarname.jar
      

  5.   

    我没用过netbeans打jar包。但是我用过eclipse或者是命令行cvfm打包
    如楼上说的。没打成大多是因为manisfest.mf没写对
     
    建议:
    1 在项目下建立lib文件夹。并把你用到的jar都烤过去
    2 然后再项目里导入这些lib下的jar包
    3 在manifest.mf里Manifest-Version: 1.0
    Main-Class: yourPackage.Main
    Class-Path: ./lib/acegi-security-1.0.1.jar ./lib/antlr-2.7.6.jar ./lib/asm-1.5.3.jar ./lib/itext-2.0.1.jar 最后一行要留个空行
      

  6.   

    使用Netbeans时,如果我们使用了第三方的jar包,在生成jar文件(点右键生成,或者直接按F11)时,默认是不会添加第三方的jar包的,生成的jar包是在dist目录下,同时生成一个lib目录,所需要的第三方jar包会生成到这个目录下。
    在工程目录下有个build.xml文件,修改这个文件添加如下代码:        <target name="run" depends="TestHello-impl.jar">
                <exec dir="bin" executable="launcher.exe">
                    <arg file="${dist.jar}"/>
                    <ZIPFILESET src="${libs.swing-layout.classpath}" />
                    <ZIPFILESET src="${libs.commons-codec.classpath}" /> 
                    <ZIPFILESET src="${libs.commons-httpclient.classpath}" /> 
                    <ZIPFILESET src="${libs.commons-logging.classpath}" /> 
                </exec>
            </target>其中TestHello是你的工程的名字,下面的ZIPFILESET是你需要一起打包的jar文件