当前位置: 首页 > 知识库问答 >
问题:

只导入一个使用maven构建的库配置文件

冯流觞
2023-03-14

我的pom.xml中有两个配置文件。一个默认值和另一个用于构建swagger客户端库。我在另一个maven项目中导入了这个库。问题是它使用了第一个项目的所有依赖项,甚至是默认概要文件中提到的依赖项。解决问题的最佳方法是什么?生成jar时,是否可以在pom文件中只放入一个配置文件?或者在导入依赖项时可以选择配置文件吗?

共有1个答案

裘兴思
2023-03-14

你需要这样的东西

1)一个将一切维系在一起的父母

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.greg</groupId>
  <artifactId>hm-parent</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>pom</packaging>

  <name>hm-parent</name>

  <modules>
    <module>hm-client</module>
    <module>hm-default</module>
  </modules>

</project>

2) 客户端模块

<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>com.greg</groupId>
    <artifactId>hm-parent</artifactId>
    <version>1.0-SNAPSHOT</version>
  </parent>

  <artifactId>hm-client</artifactId>
  <name>hm-client</name>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

</project>

3)默认模块,将客户端从同一父项目下的同一项目中拉入

<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>com.greg</groupId>
    <artifactId>hm-parent</artifactId>
    <version>1.0-SNAPSHOT</version>
  </parent>

  <artifactId>hm-default</artifactId>
  <name>hm-default</name>

  <dependencies>
    <dependency>
      <groupId>com.greg</groupId>
      <artifactId>hm-client</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

</project>
 类似资料:
  • 我试图为我的生产环境创建一个构建版本。在我的SpringWeb应用程序中,我有4个.yml文件 应用程序.yml application-development.yml application-staging.yml application-production.yml 在应用中。yml文件,我指定 我使用maven创建一个构建的命令是 在我的目标文件夹中,我可以看到所有属性和我的生产设置没有出现

  • 导入一个Ant构建 你可以在你的gradle项目中通过ant.importBuild()来导入一个ant构建,当你导入了一个ant构建,每一个ant target都会被视为一个Gradle任务.这意味着你可以像操作,执行gradle任务一样操作,执行ant target 例 16.8.导入ant构建 build.gradle ant.importBuild 'build.xml' build.xm

  • 你怎能一口吃头大象呢?有时你会遇到这种情况,想要从被不同类管理的各种片段构建单一的配置文件。 例如,你可能有两到三个服务需要 rsync 模块配置,因此你不能只发布单一的配置文件 rsyncd.conf。 尽管你可以使用 Augeas,但是一种更简单的方法就是使用 exec 资源将若干配置片段串接成一个文件。 操作步骤 使用如下代码创建 /etc/puppet/modules/admin/mani

  • 对于我的项目,我想使用两个第三方包:OCR和SQL-Cipher。但是,当我尝试配置这两个包时,我收到一个。你能帮我找出我的项目设置配置有什么问题吗? 我正在使用的第三方软件包有: OCR-和for 文件夹(非文件夹)中的sql-cipher-jar文件和.so文件 null null 当我只指定SQL-Cipher时,代码工作得很好,但如果我同时导入tess-two项目(当时用于OCR),则会得

  • 我如何告诉Jenkins使用系统安装的Maven? 为什么它要求MAVEN_HOME而不是m2_home?为什么它不显示当前的系统Maven?当构建运行时,它会给出一个BS错误: 解析POM错误:未能解析POM org.apache.maven.project.project.projectBuildingException:在处理POM时遇到一些问题:[FATAL]不可解决的父POM:未能在ht

  • null 默认配置文件,只需运行maven: vintage配置文件,运行maven:属性 这个简单的项目只包含一个类和两个junit测试(一个junit-jupiter和一个junit(v4.13.1)https://github.com/jactor-rises/junit-profiles)。有人能看到这个项目的配置有什么问题吗 注意! 主分支不包含任何代码。 有两种实现,请参阅分支:和