当前位置: 首页 > 面试题库 >

Hudson / Jenkins PMD配置

钱运浩
2023-03-14
问题内容

我是Jenkins的新手,刚刚开始配置它。这是我到目前为止所做的:

  1. 安装并配置了Jenkins以显示主页。添加了PMD插件。
  2. 将设置HUDSON_HOME为特定目录> C:\ Work \ Jenkins
  3. 配置了一个测试版本以运行简单的no-thing ant脚本。运行成功

  4. 编写了一个独立程序,pmdbuild.xml以对C:\ myview中的一组文件运行检查(我正在使用clearcase)。此xml还将输出pmd_results.xml复制到以下位置的工作区目录中:$HUDSON_HOME/[job-name]/workspace

  5. 现在,我pmdbuild.xml在主要构建中添加了。因此,我的构建有2个步骤:运行一个简单的脚本,什么都不做。b。运行p mdbuild.xml生成pmd_results.xml并将其放入$HUDSON_HOME/[job-name]/workspace(HARD-CODED,因为Jenkins PMD插件希望该文件在那里)

  6. 詹金斯(Jenkins)会pmd_results.xml通过插件自动提取并显示警告和所有内容。

现在的问题是:

  • 如果我单击PMD结果中的文件名,则filenotfound它将在查找源文件时出现异常$HUDSON_HOME/[job-name]/workspace

  • 我的Java代码文件位于C:\ myview(一个清晰的快照视图)中

我的问题是,我是否需要所有代码文件都放在其中$HUDSON_HOME/[job-name]/workspace?我不能告诉詹金斯在C:\
myview或任何其他目录中查找PMD输入文件而不是$HUDSON_HOME/[job-name]/workspace??

抱歉,冗长的描述。


问题答案:

Jenkins期望所有代码都在工作空间中。通常,Jenkins用于将代码的副本签出到工作区中,然后在工作区中的Sources上运行所有构建步骤。

乍一看似乎有些束缚,但是如果您需要将Jenkins移至另一台服务器或创建一个从属实例,则可以为您节省很多麻烦。

因此,我建议您让Jenkins将您的代码(应该有一个clearcase插件)检出到工作区中,并对检出的代码运行分析。

如果有令人信服的原因使您的代码必须保留在原处(在您的情况下为C:\
myview),则仍可以将构建的工作空间设置为该目录(在作业配置页面中找到此目录,您需要单击“扩展”按钮以查看该选项)。



 类似资料:
  • Hudson 是一个可扩展的持续集成引擎。 主要用于: 1.持续、自动地构建/测试软件项目,如CruiseControl与DamageControl。 2.监控一些定时执行的任务。 Hudson拥有的特性包括: 易于安装-只要把hudson.war部署到servlet容器,不需要数据库支持。 易于配置-所有配置都是通过其提供的web界面实现。 集成RSS/E-mail/IM-通过RSS发布构建结果

  • 问题内容: 如何将Hudson / Jenkins配置到生产环境并使用相同的配置进行部署? 我在Jenkins中配置了一个构建和部署工作流来进行生产推送。现在,我需要使用相同的配置来进行暂存推送,希望这两个文件夹和数据库名称将更改以反映阶段。即从to 和db from 到。 我不想复制配置,因为可能必须在一个地方更改配置,然后我必须对每个副本进行重复更改。理想情况下,我想通过传递一些参数来尝试 问

  • 问题内容: 我有一个在Hudson奴隶上运行的项目。我希望其中之一在Java6而不是默认值(我的环境中为Java5)下运行Ant。 在项目配置视图中,我希望找到以下两者之一: 一个显式选项,允许我设置一个自定义JDK位置以用于该项目。 一种为该项目设置自定义环境变量的方法,这将允许我将JAVA_HOME设置为JDK6位置。这将使Ant能够根据需要在Java6上运行。 有什么办法可以做到以上任一?如

  • 问题内容: 有没有人使用Hudson作为使用UnitTest ++作为测试库的C ++项目的Continuous-Integration服务器? 您是如何设置的? 我知道以前有关持续集成的问题很多,但我希望这个问题范围较窄。 编辑:我会澄清一下我要寻找的东西。我已经将构建设置为在单元测试失败时失败。我正在寻找类似Hudson的JUnit支持的东西。UnitTest ++可以创建XML报告(请参阅此

  • 问题内容: 在2011年,哈德森(Hudson)和詹金斯(Jenkins)紧随其后(IMHO)-哈德森(Hadson)有点稳定,但詹金斯(Jenkins)的发展更快。 2012年的“哈德逊与詹金斯”现在情况如何? 问题答案: 在稳定性方面,詹金斯(Jenkins)一年多以来一直为希望更加确保所安装软件的稳定性和支持的人们提供长期支持(LTS)版本。 每三个月左右,就会选择一个先前的发行版,Jenk

  • 问题内容: 我正在配置一个詹金斯,以在MacOS 10.6.6上构建我的XCode项目。为此,我已将最新的tomcat容器和最新的詹金斯安装为ROOT.war。除添加subversion集成外,所有方法都工作正常:(.。在jenkins中创建新项目后,我在“源代码管理”中选择了“ subversion”,并以与在命令行Subversion工具中使用的相同方式输入了存储库URL: 不幸的是,它无法处