不完全支持对带有类型测试jar的项目foo的依赖



在我的 maven 项目中,我正在使用 m2e 不喜欢的类型 test-jar 的依赖项,并给出以下警告。

"对带有类型测试罐的项目foo的依赖并不完全 支持。可能会出现类路径和/或部署问题。尝试 Maven->禁用工作区"

为什么

会出现此问题,为什么禁用工作区分辨率可以解决它?

test-jar 的问题在 Eclipse 中,请参阅错误 365419 - 集成测试的类路径

我尝试过通过下面的hack使此警告消失,但是它有一个副作用,即由于运行代码时无法正确设置时,eclipse中测试的类路径无法从eclipse运行测试。 我在这里发帖是希望有人可以改进这个黑客并使其工作。

在 pom 文件中创建配置文件在日食时处于关闭状态,但在日食之外运行 maven 时会自动打开。

<profiles>
        <profile>
            <id>test-jars</id>
            <activation>
                <property>
                    <name>!m2e.version</name>
                </property>
            </activation>
            <dependencies>
                <dependency>
                    <groupId>com.example</groupId>
                    <artifactId>foo</artifactId>
                    <version>${project.version}</version>
                    <type>test-jar</type>
                    <scope>test</scope>
                </dependency>
                <dependency>
                    <groupId>com.example</groupId>
                    <artifactId>bar</artifactId>
                    <version>${project.version}</version>
                    <type>test-jar</type>
                    <scope>test</scope>
                </dependency>
            </dependencies>
        </profile>
    </profiles>

在 eclipse 中定义了 m2e.version 属性,因此 m2e 会忽略 test-jar 依赖项,并且不会生成警告。但是,在命令行上运行 maven 时,配置文件会激活,因为没有 m2e.version 属性,因此警告消失。

最新更新