【问题标题】:What's the difference between Maven plugins and dependencies?Maven 插件和依赖项有什么区别?
【发布时间】:2014-10-10 04:41:48
【问题描述】:

我正在将 Neo4j 和 MongoDB 与 Grails 一起使用,我想知道 Maven Neo4j 插件是否也为我的构建提供了 Neo4j 依赖项。 MongoDB 也是如此。

我很困惑。我应该使用什么,插件或依赖项?有什么区别?

【问题讨论】:

    标签: maven neo4j dependencies


    【解决方案1】:

    Dependencies 是项目需要在其类路径中在某个时间点(即编译时或运行时)可用的工件(即 jar)

    但是,插件是一个工件,您可以在项目中配置它以使其在项目构建期间实际执行某些操作。 (例如,有一些插件可以实际编译您的 java 类、复制文件或启动和停止数据库等)。您的项目的类路径中没有可用的插件。

    以 Neo4J 为例,如果您的项目需要 Neo4j 类在类路径中可用,您可以将其作为 依赖项 包含 - 可能是因为您正在针对他们的 API 进行编译。但是,如果您只是需要一个 Neo4J 服务器来运行您的测试,那么您可以使用 Neo4J plugin 在 Maven 运行您的测试之前让它启动一个服务器,然后插件会在测试已完成。

    我建议阅读 Sonatype 的书 Maven: A Complete Reference,了解有关 Maven 的更多详细信息。

    【讨论】:

    【解决方案2】:

    现在我得到了答案 主要是 Grails Plugin 提供了很多 Facility,比如 Transaction,Dynamic Finders authomatic 你不需要为它做任何事情,但是 Spring Data Neo4j 也提供了这些工具但是你需要在 repository 中告诉 Code。两者各有优劣,程序员的选择很有必要

    【讨论】:

      猜你喜欢
      • 2019-09-18
      • 1970-01-01
      • 2016-12-19
      • 2014-12-09
      • 2014-04-20
      • 2015-11-13
      • 1970-01-01
      • 2015-11-11
      • 2012-08-06
      相关资源
      最近更新 更多