Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Maven:如何在构建和发布过程中跳过quickstart或示例模块的安装/部署?_Maven - Fatal编程技术网

Maven:如何在构建和发布过程中跳过quickstart或示例模块的安装/部署?

Maven:如何在构建和发布过程中跳过quickstart或示例模块的安装/部署?,maven,Maven,我的项目结构如下所示: foo - foo-core - foo-integration - foo-quarkus-extension - foo-spring-boot-starter - foo-quickstarts - foo-quickstart1 - foo-quickstart2 那些模块foo-quickstart1和foo-quickstart2有点特殊: 它们都位于foo quickstarts的元素中,以确保I

我的项目结构如下所示:

 foo
   - foo-core
   - foo-integration
     - foo-quarkus-extension
     - foo-spring-boot-starter
   - foo-quickstarts
     - foo-quickstart1
     - foo-quickstart2
那些模块
foo-quickstart1
foo-quickstart2
有点特殊:

  • 它们都位于
    foo quickstarts
    元素中,以确保IDE(如IntelliJ)自动配置它们
  • 它们按原样包含在发行版zip中,供新用户复制粘贴
  • 它们没有任何父pom(因此它们不扩展
    foo quickstarts
    foo
  • 他们使用的是版本
    0.0.1-SNAPSHOT
    ,而且永远不会改变。所有其他模块使用版本
    7.38.0-SNAPSHOT
    ,每3周发布一次

  • 如何避免
    foo-quickstart1
    foo-quickstart2
    最终出现在本地/远程maven存储库中-尤其是在发布期间?
    我仍然希望在
    foo
    mvn清洁安装时编译和测试它们

    我看到的唯一不乱丢quickstart项目POM的方法是:

    • 将多模块项目一分为二(这可能是您不想要的)
    • 通过使用
      -pl
      参数一次只构建多模块项目的一部分,拆分构建过程

    通常,我会在相关项目中向maven安装和maven部署插件添加
    skip
    参数,但这不是一个选项。

    而且您可能不想在
    foo-quickstart1
    foo-quickstart2
    的POM中添加条目,对吗?是的,确实如此,作为从其中一个快速入门开始的用户,不需要它们。您可以考虑使用Maven原型,而不是复制/粘贴快速入门项目。快速入门应该使用
    git clone
    ,然后使用
    mvn clean install
    。原型是我经历中的一个痛苦。我管理一些原型,它工作得很好。很有趣,但实际上对我来说两者都不起作用。我不想每次都教每个人添加
    -pl
    ,也不想创建多个项目。我希望有一种
    方法。