有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

爪哇岛“FitNesse和Peekaboo罐子”的惊悚故事

我有:

  • 一台FitNesse服务器全部就绪
  • 一个包含所有(或多或少)良好编码的装置的项目。
    • 这个固定装置项目是一个专业的项目
    • 这取决于我测试的项目,也是专业化的项目
    • 它托管在git存储库中
    • 由温柔的詹金斯经常建造

总而言之,一切都应该很好

但有时,当詹金斯重建和重新包装我的固定装置的罐子时,Fitnesse再也认不出这个罐子了

此jar的位置已在pom文件中设置,该文件由以下人员提供给FitNesse:

!pomFile /var/lib/myfitnesse/configFiles/pom.xml

(哪个文件几个月没有更改过。)

当我去看我的AcceptanceTests.ClasspathPage我看到我的jar文件(当它出现时)在路径上:

/var/lib/myfitnesse/.m2/repository/local/company-name/fixtures/test-fixtures/1.1-SNAPSHOT/test-fixtures-1.1-SNAPSHOT.jar

但是当它没有出现时,我做的第一件事就是使用我最喜欢的命令行界面,去检查我的jar文件是否真的丢失了,当我发现它在那里时,我感到非常惊讶。平静地等待被使用

因此,我卑鄙地滥发我的[CTRL]+[F5]技能,绝望地希望FitNesse会醒来,看到上帝遗弃的罐子。唉,直到我决定通过詹金斯重建我的固定装置,这一切才开始

因此,为了检查我的jar文件是否以某种方式损坏,我决定添加:

!path /var/lib/myfitnesse/.m2/repository/local/company-name/fixtures/test-fixtures/1.1-SNAPSHOT/test-fixtures-1.1-SNAPSHOT.jar

在我的AcceptanceTests.ClasspathPage。但这个电话成功了。“pom包含”包括所有罐子,但我刚刚构建的罐子和“路径包含”工作得非常好

所以,如果我想总结一下,我会让它发挥作用,但如果我真的把它当成巫毒行为的例子,我将无法尊重自己。所以我必须问这个问题并找到答案:

我错过了什么(因为坦率地说,我肯定我是这样的)? 我做错了什么?对此有什么合理和合乎逻辑的解释(因为有一种解释,必须存在)


编辑以回答Arnaud Denoyelle的问题

这是我的固定设备porject的pom(至少我可以透露)

  <distributionManagement>
    <repository>
      <uniqueVersion>false</uniqueVersion>
      <id>test-fixtures-releases</id>
      <name>test-fixtures releases</name>
      <url>file:///${user.home}/.m2/repository/releases</url>
      <layout>default</layout>
    </repository>
    <snapshotRepository>
      <uniqueVersion>true</uniqueVersion>
      <id>test-fixtures-snapshots</id>
      <name>test-fixtures Snapshots</name>
      <url>file:///${user.home}/.m2/repository/snapshots</url>
      <layout>default</layout>
    </snapshotRepository>
  </distributionManagement>

你可以在/var/lib/myfitnesse/configFiles/pom中找到与我的装置相关的东西。xml

<dependency>
  <groupId>my.project</groupId>
  <artifactId>test-fixtures</artifactId>
  <version>1.1-SNAPSHOT</version>
</dependency>

共 (0) 个答案