Java 为什么赢了';IntelliJ IDEA创建一个JAR工件,而不使用Main()方法创建一个类?

Java 为什么赢了';IntelliJ IDEA创建一个JAR工件,而不使用Main()方法创建一个类?,java,intellij-idea,Java,Intellij Idea,根据对这个问题的回答: 我正试图用IDEA编写的一个中间件Java组件制作一个Jar文件。我打算在几个相关的项目中导入这个Jar,所有这些项目都利用中间件组件 为了生成eajar文件,我被指示使用projectstructure对话框创建一个“工件”。当我这样做时,对话框要求用“Main”方法标识类 但是我的jar基本上是一个库类,并且没有一个类有(或需要)main方法。当然,我可以创建一个虚拟的main方法,但是这个需求让我很困扰。如果我要创建一个包含中间件对象的Jar,为什么需要一个带有m

根据对这个问题的回答:

我正试图用IDEA编写的一个中间件Java组件制作一个Jar文件。我打算在几个相关的项目中导入这个Jar,所有这些项目都利用中间件组件

为了生成eajar文件,我被指示使用projectstructure对话框创建一个“工件”。当我这样做时,对话框要求用“Main”方法标识类

但是我的jar基本上是一个库类,并且没有一个类有(或需要)main方法。当然,我可以创建一个虚拟的main方法,但是这个需求让我很困扰。如果我要创建一个包含中间件对象的Jar,为什么需要一个带有main方法的类呢/


检查您是否在某个地方设置了一个选项,即所讨论的
jar
文件应该是一个
可运行的jar
文件。可运行jar文件必须具有一个具有有效的
公共静态void main(String[]args)
方法的类。对于可运行的JAR文件,必须在JAR清单中正确记录该方法


我想,既然您(在某个地方)选择了“runnable jar file”,那么在您指定所需的“main类”之前,项目不会让您继续进行;但是,如果您将项目重新配置为不需要“runnable”部分,那么您仍然可以正常使用jar,而无需指定“main类”。唯一的缺点是您不能
java-jar
它。

我使用IDEA13,您不需要指定主类。您使用的是什么版本?如果保留为空会发生什么情况?并不是每个盒子都需要有一个值。巴克,你原来是对的。我看到一个盒子,我觉得我必须把它填满。但在这种情况下没有必要。