我正在使用netbeans IDE在java中创建VoIP客户端服务器对.我想只使用一个项目,但我不熟悉netbeans如何创建Jar文件.我需要一个如果这是可能的,如果是的话,如何设置它.
的JAR文件规范只允许一个Main-Class每JAR属性,但JAR可具有其声明的类的任意数量的main()方法.Build Packaging除非特别排除,否则任何此类都将包含在项目的属性中.
作为具体示例,H2数据库包括以下类main():
org.h2.jdbcx.JdbcConnectionPool org.h2.tools.Backup org.h2.tools.ChangeFileEncryption org.h2.tools.Console org.h2.tools.ConvertTraceFile org.h2.tools.ConvertTraceFile org.h2.tools.CreateCluster org.h2.tools.DeleteDbFiles org.h2.tools.Recover org.h2.tools.Restore org.h2.tools.RunScript org.h2.tools.Script org.h2.tools.Server org.h2.tools.Shell
附录:显然,我的垃圾抽屉项目需要维护.
$ find scratch/src -name \*java | xargs -J % egrep 'main[ \t]*\(Str' % | wc -l
     109
        我相信“主类”的目的意味着最终的 JAR 清单文件将一个类标记为“要运行的类”:以便最终用户只需双击它*或运行简化的命令行喜欢:
java -jar <jar>  
而不必指定整个包/类名称,例如:
java -cp <jar> com.yourcom.package.classname
如果我是对的,那么我不明白拥有多个主类有什么意义?也许我误解了你的问题 - 或者“主”类还有其他目的?
如果您的意思是有两个具有“main”方法的类 - 那么这很好 - 最终用户可以按名称启动任何类 - 只要它们具有标准的 main 方法 sig,例如:
public static void main(String[] args)
它应该可以工作。
*(至少在 Windows 上,这是否有效还取决于他们拥有哪个 JRE 以及可能的其他东西)
| 归档时间: | 
 | 
| 查看次数: | 7271 次 | 
| 最近记录: |