2014-04-23 131 views
0

我想用maven运行独立的java应用程序并添加maven-jar-plugin。 这里是我的pom.xmlmaven-jar-plugin与maven-jar的依赖关系

<dependencies> 
    <dependency> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-jar-plugin</artifactId> 
     <version>2.4</version> 
     <type>maven-plugin</type> 
    </dependency> 
</dependencies> 
<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-jar-plugin</artifactId> 
      <version>2.4</version> 
     </plugin> 
    </plugins> 
</build> 

怎么会这样的插件被添加为依赖和插件?我怎样才能使用这个作为依赖?

感谢

+0

这个问题在这里被问过很多次之前:)例如http://stackoverflow.com/questions/11881663/what-is-the-difference-in-maven-between-dependency-and-plugin-tags-in-pom-xml或http://stackoverflow.com/questions/ 15917352/is-there-difference-between-dependencies-and-dependencies-in-plugin-tags – user3159253

+0

我的问题更多地是关于如何在eclipse中选择其中一个时使用 – hakkican

回答

0

好了,<dependency><dependencyManagement>部分允许你在一个地方指定插件版本,然后在几个(孩子)继承它只需将模块的名字,W/O进一步版本规范,从而简化更新插入。大体上,依赖关系在您的类路径中是一个罐子。

A <plugin> in <build><pluginManagement>允许创建跨多个(子)模块共享的插件配置。这个插件被maven自己用来执行它的任务,所以坦率地说,这是一个在类路径中的jar。也可能有<reporting>部分用于Maven报告等。

A <plugin>条目<build>开启此插件的特定模块。通常它是指定的W/O版本,因为它的继承。此外,还可以在此处覆盖从父级继承的插件配置(或者从此pom.xml中的<pluginManagement>节开始)。