创建没有主类的Jar库

Thi*_*ars 14 java program-entry-point jar intellij-idea

今天我刚刚创建了一个Java库.我使用Main类创建它,因为IntelliJ IDEA 14要求我添加一个.但是我希望它是一个普通的库,没有任何Main类.是否可以从这样的项目创建一个jar文件,而没有一个带有main方法的类?如果是这样,你如何创建这样一个罐子.

如果你从不使用它,那么拥有一个main方法似乎有点傻.

Dar*_*gue 8

使用像 Maven 这样的构建工具(没有 IDE 依赖项,但为了方便可以从 IDE 调用)和 shade 插件来创建一个“超级”JAR(将所有需要的依赖项包含到项目的一个最终 JAR 中)...

“pom.xml”

...

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    <version>2.3</version>
    <executions>
       <!-- Run shade goal on package phase -->
      <execution>
        <phase>package</phase>
        <goals>
          <goal>shade</goal>
        </goals>
      </execution>
    </executions>
  </plugin>
Run Code Online (Sandbox Code Playgroud)

Shade插件的文档:

https://maven.apache.org/plugins/maven-shade-plugin/


dey*_*dey 6

您可以通过几种方式来完成,例如从命令行、IDE、maven 或其他构建工具,我描述了两种方式:

命令行:

您可以从命令行(不带 IDE)创建 jar 文件,参考:https : //docs.oracle.com/javase/tutorial/deployment/jar/build.html

jar cf jar-file input-file(s)
Run Code Online (Sandbox Code Playgroud)

这里jar-file是你想和.jar文件名input-file(s)是文件,你想要把你的库中(可使用通配符,如:*.class

智能理念:

像本文一样创建 Artifact,但不指定 Main 类http://blog.jetbrains.com/idea/2010/08/quickly-create-jar-artifact/

然后单击Build > Build artifact > Build

即使没有 Main 类,这也有效。

  • 这是一个糟糕的答案,当有更合适的(已记录的、非特定于 IDE 的)方法时,会显示一些(其他)IDE 的图片。 (3认同)