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
使用YAML-Maven enforcer插件配置Maven是特定的-不起作用_Maven_Yaml_Maven Enforcer Plugin - Fatal编程技术网

使用YAML-Maven enforcer插件配置Maven是特定的-不起作用

使用YAML-Maven enforcer插件配置Maven是特定的-不起作用,maven,yaml,maven-enforcer-plugin,Maven,Yaml,Maven Enforcer Plugin,我的Maven POM是YAML(多亏了),我很难用YAML编写配置,因为示例中有值,但我认为我应该配置Maven enforcer插件的banTransitiveDependencies规则,使其不包含包含或排除 以下是我迄今为止的尝试: modelVersion: 4.0.0 artifactId: my-app groupId: com.adam.stuff version: 3.3.1 packaging: jar properties: spring.boot.version:

我的Maven POM是YAML(多亏了),我很难用YAML编写配置,因为示例中有值,但我认为我应该配置
Maven enforcer插件
banTransitiveDependencies
规则,使其不包含
包含
排除

以下是我迄今为止的尝试:

modelVersion: 4.0.0
artifactId: my-app
groupId: com.adam.stuff
version: 3.3.1
packaging: jar
properties:
    spring.boot.version: 1.5.10.RELEASE
    spring.core.version: 4.3.14.RELEASE
dependencies:
  - artifactId: spring-boot-dependencies
    groupId: org.springframework.boot
    version: ${spring.boot.version}
    type: pom
  - artifactId: spring-boot-starter-web
    groupId: org.springframework.boot
    version: ${spring.boot.version}
  - artifactId: spring-boot-starter-test
    groupId: org.springframework.boot
    version: ${spring.boot.version}
  - artifactId: spring-context
    groupId: org.springframework
    version: ${spring.core.version}
  - artifactId: spring-web
    groupId: org.springframework
    version: ${spring.core.version}
build:
    plugins:
      - artifactId: maven-enforcer-plugin
        groupId: org.apache.maven.plugins
        version: 3.0.0-M1
        executions:
          - id: enforce-ban-transitive-deps
            goals: [enforce]
            configuration:
                rules: 
                    banTransitiveDependencies: 
                        comment: "Don't be a dummy"
      - artifactId: spring-boot-maven-plugin
        groupId: org.springframework.boot
        version: ${spring.boot.version}
        executions:
          - goals: [repackage]
        configuration:
            fork: true
            executable: true
但该插件抱怨:

[错误]无法执行目标org.apache.maven.plugins:maven enforcer插件:3.0.0-M1:enforce(强制执行ban可传递deps)在project my app上:无法解析mojo org.apache.maven.plugins:maven enforcer插件:3.0.0-M1:enforce for parameter规则:无法创建接口org.apache.maven.enforcer.rule.api.EnforcerRule:org.apache.maven.enforcer.rule.api.EnforcerRule的实例。(>)-[Help 1]

这是文件:

接下来的例子将包括和排除一些东西,我现在不想这样做,因为我想在我弄清楚配置后设置它来玩

我也尝试过使用他们的XML,但仍然会出现同样的错误

如果要尝试使用
pom.yml
,请创建一个名为
.mvn/extensions.xml
的目录和文件,并将其放在项目的根目录中(在
pom.xml
旁边),然后:

<?xml version="1.0" encoding="UTF-8"?>
<extensions>
    <extension>
        <groupId>io.takari.polyglot</groupId>
        <artifactId>polyglot-yaml</artifactId>
        <version>0.2.1</version>
    </extension>
</extensions>

木卫一
多花山药
0.2.1
根据以下内容:

而不是:

                    banTransitiveDependencies:
                        comment: ...
此规则支持以下参数:

•…
•…
•消息-如果规则失败,则向用户发送可选消息。将替换生成的报告消息

                    banTransitiveDependencies:
                        comment: ...