小编Hom*_*Fab的帖子

Maven部署忽略maven-versions插件设置的项目版本

我有一个Maven项目"核心".在项目的pom.xml中,版本为0.1.我在Jenkins中使用参数化构建并设置文本参数myNewVersion = 3.1.我还设置了以下maven目标:

versions:set -DnewVersion=${myNewVersion} versions:commit deploy
Run Code Online (Sandbox Code Playgroud)

在构建时,maven将pom.xml中的版本正确更新为"3.1".但是,maven部署任务将我的项目部署为"core-0.1",版本仍为0.1.我的Nexus中相应的0.1 dir中包含的pom文件指出版本号为"3.1".

我该怎么做才能强制maven部署任务使用maven版本插件设置的正确版本?

非常感谢您的帮助.

编辑1: 澄清我的需求:POM中项目的版本不应该说明实际的构建版本.我用它来确定我的"核心"项目与底层系统和API的兼容性.更详细:项目"core"从jenkins获取"interfaceVersion = 3.1"或"interfaceVersion = 4.0"参数.这决定了我的核心项目使用哪个版本来依赖于另一个"库"包.

现在,我有两个Jenkins构建作业,一个用于3.1,一个用于4.0库项目依赖的核心项目.每个都从SVN检出相同的项目代码,但将不同的版本参数传递给正在构建的"核心"项目.我想在pom.xml中将此版本号用作我的项目版本号,并将我的jar的版本号用于nexus(即core-3.1.jar或core-4.0.jar).

编辑2: 我再来一点.我只是使用我在jenkins中设置的version参数作为参数化构建部分中的参数作为pom文件中项目的版本号.Maven警告这样做,但它确实有效.但是,依赖于"核心"的所有项目现在都需要指定"$ {myNewVersion}"作为依赖版本.

所以我尝试再次使用versions-maven-plugin来设置/覆盖pom文件中的版本,就像我上面所说的那样.但是,现在使用maven deploy时出现"拒绝访问"错误.如果我删除"版本:set -DnewVersion = $ {myNewVersion}版本:commit"并只使用"deploy",它就可以了.有任何线索如何解决这个问题?

parameters nexus maven jenkins

8
推荐指数
1
解决办法
1790
查看次数

Twitter Bootstrap Popup忽略了延迟

在stackoverflow上关注这个问题后,我创建了一个在悬停时加载的twitter bootstrap popover.但是,没有使用延迟,popover只是立即显示.这是我的代码:

$('body').delegate('.withajaxpopover', 'hover', function(event) {
   if (event.type === 'mouseenter') {
      var el=$(this);
      $.get(el.attr('data-load'), function(d) {
      el.popover({delay: { 
                     show: 750, 
                     hide: 100
                  },
                  title: "MyTitle", 
                  content: d}).popover('show', 
                                       {delay: { show: 750, hide: 100 }});
                    });
   } else {
                    $(this).popover('hide');
   }
});
$('body').delegate('.withajaxpopover', 'click', function(event) {
   $(this).popover('hide');
});
Run Code Online (Sandbox Code Playgroud)

延迟只是被忽略了.我能做什么?

感谢您的帮助或提示!

delay popover twitter-bootstrap

7
推荐指数
1
解决办法
6704
查看次数

将多个第三方JAR部署到全局(内部)Maven nexus

我有一大堆第三方JAR文件(我使用的各种SDK中大约有40种不同的JAR)坐在我硬盘上的文件夹中.我想在我未来的maven项目中将这些JAR声明为依赖项.

我无法从全球范围内的全球maven存储库中获取这些JAR,例如Log4J,JUnit,Velocity等,因为它们在那里不可用.

如何将我的本地文件夹中的这些JAR文件导入我公司的全局(但内部)maven存储库(Nexus)?什么是必要的步骤?最好的解决方案是一个程序化的解决方案,如果可能的话.

我很困惑,我找不到使用谷歌的问题的任何解决方案,因为我认为这是一个非常普遍的问题.所以也许我在想错误的方向.

非常感谢你!

deployment dependencies jar nexus maven

5
推荐指数
1
解决办法
9504
查看次数