1

我们使用 Hudson CI 作为我们的构建工具,当我们在 Hudson 运行的同一台服务器机器中引用文件系统时,没有问题。

但是当我们使用 File SCM 插件指向具有所有读/写权限的远程机器中的文件系统时,它无法签出并失败并出现以下错误。

FATAL: Parameter 'directory' is not a directory
java.lang.IllegalArgumentException: Parameter 'directory' is not a directory
    at org.apache.commons.io.FileUtils.listFiles(FileUtils.java:358)
    at org.apache.commons.io.FileUtils.iterateFiles(FileUtils.java:404)
    at hudson.plugins.filesystem_scm.FolderDiff.getNewOrModifiedFiles(FolderDiff.java:104)
    at hudson.plugins.filesystem_scm.RemoteFolderDiff$CheckOut.invoke(RemoteFolderDiff.java:94)
    at hudson.plugins.filesystem_scm.RemoteFolderDiff$CheckOut.invoke(RemoteFolderDiff.java:88)
    at hudson.FilePath.act(FilePath.java:758)
    at hudson.FilePath.act(FilePath.java:740)
    at hudson.plugins.filesystem_scm.FSSCM.checkout(FSSCM.java:123)
    at hudson.model.AbstractProject.checkout(AbstractProject.java:1483)
    at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:507)
    at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:424)
    at hudson.model.Run.run(Run.java:1366)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
    at hudson.model.ResourceController.execute(ResourceController.java:88)
4

2 回答 2

1

我解决了这个问题,在我使用用户 ID 运行 Hudson 服务后,它可以访问远程服务器位置。

于 2012-08-29T16:17:04.943 回答
1

根据您的配置,我可以想到几件事 - 请注意,我不是 Windows 专家。

  1. 您的 Hudson 服务器是否在 Windows 上运行?否则,文件系统路径的 \remoteserver\d$\source\ 格式将不起作用。
  2. 运行 Hudson 的用户是否有权访问远程文件路径 \remoteserver\d$\source\ ?
于 2012-08-28T18:23:37.393 回答