【问题标题】:Maven dependency directory not created in target目标中未创建 Maven 依赖目录
【发布时间】:2015-11-25 14:19:07
【问题描述】:

我正在使用 Maven 3.3.3 创建一个可以部署到 Heroku 的 Spring MVC 应用程序。我打算按照 Heroku 文档 (https://devcenter.heroku.com/articles/getting-started-with-spring-mvc-hibernate) 的建议使用 jetty-runner。

我无法让 Maven 创建复制 jetty-runner.jar 文件的目标/依赖文件夹。我使用命令:

mvn clean
mvn package

我创建了目标目录,其中包含所有资源、网页和源,但不是应该复制 jetty-runner.jar 文件的“目标/依赖”文件夹。

我的 pom.xml 与上面链接中的示例应用程序提供的几乎相同。我的项目和 pom.xml 文件可以在以下 GitHub 存储库中找到:

https://github.com/gfigueroa/nlp-tools-spring-heroku

【问题讨论】:

    标签: java spring maven heroku


    【解决方案1】:

    <pluginManagement> 部分外部添加您的依赖插件的激活:

    ...
    <build>
      <pluginManagement>
        <plugins>
          <!-- Leave as is -->
          ...
        </plugins>
      </pluginManagement> 
      <!-- Add the section below -->  
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-dependency-plugin</artifactId>
        </plugin>
      </plugins>
    </build>      
    ...
    

    &lt;pluginManagement&gt; 部分用于声明您的插件在激活时应该如何表现。激活本身在此部分之外完成。

    【讨论】:

    • 这是否意味着我只需要在 部分之外添加那些具有 标签的插件?
    • 是的。 &lt;pluginManagement&gt; 用作放置插件的 default 配置/执行的地方。这不是绝对必要的(但最佳实践),但如果您在许多不同的地方以相同的方式使用某个插件,它将为您节省大量重复。如果您需要针对特定​​用例,您始终可以覆盖本节之外的默认值。这对你有意义吗?我不确定我是否解释得很好。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-12-29
    • 2011-01-31
    • 2018-10-20
    • 1970-01-01
    • 2012-09-17
    • 1970-01-01
    • 2020-05-18
    相关资源
    最近更新 更多