2015-05-13 117 views
11

我在IntelliJ中创建了一个新的Maven项目,并将包装设置为jar,但是当我构建它时,目标文件夹不包含jar。我敢肯定,我的东西真的很愚蠢,但是我在不同的网站上阅读的东西很多,我只是觉得更好。 enter image description here从intellij的maven项目创建jar

+2

当你建立它时,你点击了'Maven Projects> Life Cycle> package'? – ZhongYu

回答

7

您需要的Maven Jar插件,以创建一个jar

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-jar-plugin</artifactId> 
    <configuration> 
     <archive> 
      <manifest> 
       <addClasspath>true</addClasspath> 
       <classpathPrefix>lib/</classpathPrefix> 
       <mainClass>add your main class</mainClass> 
      </manifest> 
     </archive> 
    </configuration> 
</plugin> 

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

+1

我认为你的评论只适用于一个可执行的jar。 OP没有提到可执行文件。 – kiwiron

1

假设屏幕截图显示了完整的POM文件,你缺少定义神器项。尝试添加像这样的标签后立即以下几点:

<modelVersion>4.0.0</modelVersion> 
    <groupId>com.mycompany.example</groupId> 
    <artifactId>stackoverflow-question</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 

你应该计算器-问题-0.0.1-SNAPSHOT.jar在你的/目标目录中结束。您可能需要刷新目录才能看到它(您肯定必须在Eclipse中)

14

您应该使用IDEA的Maven Projects视图构建项目。

从左下角菜单打开它:

menu

然后用Maven目标构建项目 - 即包: maven project

如果包装在pom.xml设置为jar,你会在target dir中获得一个罐子。

+0

我这样做,它确实创造了我想要的罐子。唯一的问题是,当我将它添加到另一个项目的项目结构中时,我无法从此库访问该类。我只是添加了一个SimpleUser类来测试它,但没有显示在我的其他项目中。 – Joe

+0

你可以创建另一个关于它的问题。它是依赖管理/类路径问题。 – arghtype