小编u12*_*123的帖子

将多个git repos签出到同一个Jenkins工作区

使用Jenkins 1.501和Jenkins Git插件1.1.26

我有3个不同的git repos,每个都有多个项目.

现在我需要将3 git repos中的所有项目签出到Jenkins slave上的相同工作区.我已经定义了每个git repo:源代码管理:多个SCM.但每次签出回购时,前一个回购(及其相关项目)都会被删除.

我读过这个:

http://jenkins.361315.n4.nabble.com/multiple-git-repos-in-one-job-td4633300.html

但它并没有真正帮助.我试图在所有repos的repo(可选)的Local子目录下指定相同的文件夹,但它给出了相同的结果.

如果使用Jenkins根本不可能,我猜一些预构建步骤/脚本可以用来将项目移动到正确的位置.它不是修改项目的构建配置的选项.

git jenkins

116
推荐指数
6
解决办法
13万
查看次数

从war文件更新Jenkins

我有一台Ubuntu 12.04的机器,并安装了Jenkins ver.1.424.6使用基于本指南的 apt-get ,但有一个新版本:

New version of Jenkins (1.447.2) is available for download (changelog).
Run Code Online (Sandbox Code Playgroud)

如果我按下载,我会得到一个jenkins.war文件......但是如何使用它来升级我当前的安装呢?或者在apt存储库更新之前是不可能的?

ubuntu war jenkins

84
推荐指数
5
解决办法
9万
查看次数

KDiff3:"有一种线端风格冲突"

我正在尝试使用KDiff3来解决Windows上的冲突.但是当运行合并时,我得到:

KDiff3:"有一种线端风格冲突"

没有任何合并/解决:

第一个截图

即使我在运行合并之前选择了DOS行结束:

第二个截图

有任何想法吗?

如果我只是保存而不是按下合并按钮,它似乎有效.这可能是一个解决方案.

kdiff3

73
推荐指数
2
解决办法
2万
查看次数

this.getClass().getClassLoader().getResource("...")和NullPointerException

我在eclipse helios中创建了一个带有单个子模块的最小maven项目.

在src/test/resources文件夹中,我放了一个文件"install.xml".在文件夹src/test/java中,我创建了一个包含单个类的包:

  @Test
  public void doit() throws Exception {
    URL url = this.getClass().getClassLoader().getResource("install.xml");
    System.out.println(url.getPath());

  }
Run Code Online (Sandbox Code Playgroud)

但是当我将代码作为junit 4单元测试运行时,我只得到一个NullPointerException.这之前已经运行了数百万次.有任何想法吗?

我遵循了这个指南:

http://www.fuyun.org/2009/11/how-to-read-input-files-in-maven-junit/

但仍然得到相同的错误.

eclipse maven-2 classloader

57
推荐指数
5
解决办法
17万
查看次数

如何在java中验证语言环境?

我在应用程序中读取了一个指定语言代码的文件:

public void setResources(String locale) {

    // validate locale
    // ULocale lo = new ULocale(locale);
    // System.out.println(lo.getDisplayCountry());

}
Run Code Online (Sandbox Code Playgroud)

必须采用以下格式:<ISO 639 language code>_<ISO 3166 region code>例如.en_UK,en_US等.是否可以在继续之前验证语言环境字符串是否有效?

java locale

25
推荐指数
6
解决办法
3万
查看次数

从MS bat文件执行多个maven项目?

我需要使用build.bat文件构建3个独立的maven项目(因为tycho聚合不是一个选项 - 请参阅romaintaz回答的评论).我试过(从build文件夹执行 - 见下文):

cd ../projectA
mvn clean install -U
cd ..
cd ../projectB
mvn clean install -U
cd ..
cd ../projectC
mvn clean install -U
Run Code Online (Sandbox Code Playgroud)

项目的文件夹结构是:

build
  |--> build.bat

projectA
  |--> pom.xml

projectB
  |--> pom.xml

projectC
  |--> pom.xml
Run Code Online (Sandbox Code Playgroud)

但只有projectA是构建projectB和projectC被跳过.关于如何修改上面的bat文件的任何想法,以便如果以前的项目成功构建,则构建以下项目?

batch-file maven

25
推荐指数
2
解决办法
2万
查看次数

Atlassian SourceTree不显示远程分支?

我在Windows上运行SourceTree 1.6.11.我克隆了一个Git存储库,但它没有显示我的远程分支:

在此输入图像描述

SourceTree只显示本地分支吗?

它显示了所有标签.

git atlassian-sourcetree

23
推荐指数
7
解决办法
4万
查看次数

使用gradle构建时读取maven settings.xml?

我有一个maven settings.xml位于:

 /home/u123/.m2/settings.xml
Run Code Online (Sandbox Code Playgroud)

我指定一个远程maven存储库:

<?xml version="1.0" encoding="UTF-8"?>
<settings>
  <profiles>
    <profile>
      <id>default</id>
      <repositories>
          <repository>
              <id>my.repo</id>
               <url>http://myrepo/ </url>
          </repository>
      </repositories>
    </profile>
  </profiles>
  <activeProfiles>
    <activeProfile>default</activeProfile>
  </activeProfiles>
</settings>
Run Code Online (Sandbox Code Playgroud)

在这个repo中,我已经部署了一个工件 - 实际上它是一个gradle插件.

现在我尝试使用下面的build.gradle文件构建另一个需要使用此插件/工件的项目:

apply plugin: 'java'
apply plugin: 'maven'

buildscript {
    dependencies {
        classpath 'com.test:my-gradle-plugin:1.0.0-SNAPSHOT'
    }
}
Run Code Online (Sandbox Code Playgroud)

但是构建失败了:

...
> Could not find group:com.test, module:my-gradle-plugin, version:1.0.0-SNAPSHOT.
...
Run Code Online (Sandbox Code Playgroud)

即使我有上面指向远程maven存储库的settings.xml文件,Gradle也找不到my-gradle-plugin.

如果我 build.gradle文件中指定存储库,它可以工作:

buildscript {
    repositories {
        maven {
            url "http://myrepo/"
        }
    }
    dependencies {
        classpath 'com.test:my-gradle-plugin:1.0.0-SNAPSHOT'
    }
}
Run Code Online (Sandbox Code Playgroud)

根据这篇文章:

http://forums.gradle.org/gradle/topics/have_mavenlocal_check_m2_home_conf_settings_xml

似乎gradle考虑了settings.xml文件,那么出了什么问题呢?

gradle maven

22
推荐指数
3
解决办法
2万
查看次数

Jenkins Git插件和Refspecs

RefspecBranch说明符之间有什么区别(默认为空):在下面的Jenkins作业配置中:

在此输入图像描述

我试图在作业配置中设置Refspec选项:

+refs/heads/master:refs/remotes/origin/master
Run Code Online (Sandbox Code Playgroud)

在我的构建从站上的克隆存储库中,.git/config文件如下所示:

[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
[remote "origin"]
        url = https://user:pass@git.internal.com/scm/PROJECT/project.git
        fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
        remote = origin
        merge = refs/heads/master
Run Code Online (Sandbox Code Playgroud)

似乎fetch的值不正确(从jenkins作业配置中读取).此外,它对磁盘空间消耗没有影响.

git jenkins

22
推荐指数
1
解决办法
2万
查看次数

列出与模式匹配的文件夹中的文件名,不包括文件内容

我使用下面的方法递归列出包含该文件夹的文件夹中的所有文件 $pattern

Get-ChildItem $targetDir -recurse | Select-String -pattern "$pattern" | group path | select name
Run Code Online (Sandbox Code Playgroud)

但它似乎都列出$pattern了名称和内容中的文件,例如当我运行上面的内容$pattern="SAMPLE":

C:\tmp\config.include
C:\tmp\README.md
C:\tmp\specs\SAMPLE.data.nuspec
C:\tmp\specs\SAMPLE.Connection.nuspec
Run Code Online (Sandbox Code Playgroud)

现在:

C:\tmp\config.include
C:\tmp\README.md
Run Code Online (Sandbox Code Playgroud)

确实包含SAMPLE关键字/文本,但我不关心,我只需要命令列出文件名而不是文件,其内容与模式匹配.我错过了什么?

基于以下答案,我也尝试过:

$targetDir="C:\tmp\"
Get-ChildItem $targetDir -recurse | where {$_.name -like "SAMPLE"} | group path | select name
Run Code Online (Sandbox Code Playgroud)

和:

$targetDir="C:\tmp\"
Get-ChildItem $targetDir -recurse | where {$_.name -like "SAMPLE"} | select name
Run Code Online (Sandbox Code Playgroud)

但它不会返回任何结果.

powershell powershell-5.0

22
推荐指数
3
解决办法
4万
查看次数