1

我正在通过 JUnit 和 maven 运行 cucumber-jvm。我可以进入源代码并对核心代码进行更改,但这些更改不会影响运行 cucumber-jvm 的其他项目。

如何更改核心并影响我机器上的其他项目?maven 只在 github 上运行 jars 吗?我是否必须创建一个新的 cucumber-jvm 项目并将该项目添加为依赖项而不是:

  <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-java</artifactId>
        <version>1.0.3</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-junit</artifactId>
        <version>1.0.2</version>
        <scope>test</scope>
    </dependency>

谢谢。

4

2 回答 2

2

您已经拉下 Cucumber-JVM 代码并在本地对其进行了修改,是吗?然后您需要做的就是运行一个 Maven 构建(而不是在 Eclipse 中!)。这会将您的 Maven 存储库中下载的依赖项替换为您已更改的较新的依赖项(但只有您已更改的依赖项)。然后您的测试应该会接受您的更改。

如果您想将更改提交回 Cucumber-JVM 作为增强功能或错误修复,并且您应该,如果您觉得它们有用,您将需要通过 github 拉取请求流程 - 请参阅 Cucumber-JVM网站了解详情。

于 2012-08-13T10:03:46.227 回答
0

正如@TrueDub所说,您需要在本地克隆项目,并使用mvn install. 这将构建项目并将其安装在您的本地存储库中。您在本地构建的任何引用您在 pom 中构建的 cucumber-jvm 版本的项目都将使用您修改后的版本。

如果您需要将您的 cucumber-jvm 版本分发到其他环境,最好的办法是使用Nexus 存储库来部署您的工件并使其可供组织内的其他人使用。确保为该工件指定一个名称(或分类器或版本),以将您的版本与官方版本区分开来,以避免潜在的混淆——在这种情况下,必须修改使用您的 cucumber-jvm 版本的 pom 以使用该特定版本。

于 2012-11-30T09:18:39.010 回答