小编Eng*_*_DJ的帖子

使用Jenkins/Git增加Maven项目版本

我正在使用Jenkins构建Maven Java项目并将它们部署到Nexus存储库.我也使用Git,虽然我更习惯Subversion,所以我的Git知识有限.

我想Jenkins/Maven:

  1. 将功能分支合并到集成分支中
  2. 构建合并代码,运行单元测试
  3. 如果它们通过,则增加Maven版本号
  4. 将合并代码推送到origin的集成分支
  5. 将工件部署到Nexus存储库

我收集Git合并可以实现:http://twasink.net/2011/09/20/git-feature-branches-and-jenkins-or-how-i-learned-to-stop-worrying-about-破碎构建/

我也读了很多关于maven-release-plugin.

我不确定如何达到上述结果.如果我将SCM细节硬编码到每个项目的POM中,那么不会maven-release-plugin仅仅在该存储库上而不是Jenkins的本地存储库中执行操作吗?

如果我使用Jenkins将环境变量传递给Maven以指定版本号的解决方案,那么我希望在我的IDE中有本地版本解析问题.

git hudson maven maven-release-plugin jenkins

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

Eclipse JSTL核心自动完成

Eclipse的JSP标记自动完成适用于Spring Security标记,但不适用于JSTL核心.

我在JSP文件的顶部有以下声明:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="sec" uri="http://www.springframework.org/security/tags" %>
Run Code Online (Sandbox Code Playgroud)

我依赖于JSTL:

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

......但奇怪的是,JSTL Core永远不会自动暗示.

eclipse jsp jstl jsp-tags spring-mvc

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

部署不是.wars的Java Server应用程序

是否有任何集成良好的应用程序管理堆栈,允许构建,部署和更新.war作为服务器运行的非Java应用程序?例如,作为服务器的消息使用者(但不是Web服务器并且没有Servlet),或.jar嵌入了Jetty的可执行文件?

构建和部署.wars非常简单:Maven有战争原型,Jenkins有一堆插件用于将.war文件部署到各种应用程序服务器,其中大多数都接受在运行时上传新的Web应用程序.像Elastic Beanstalk这样的工具使这个过程更加容易,与服务器环境的管理联系在一起.

相比之下,部署可执行文件.jar似乎重新发明了轮子.人们需要理清阴影依赖关系的最佳方法,并使用大量的Maven插件创建可执行的人工制品,将此工件存放在某处,然后找到在目标服务器上安装它的方法,并在必要时替换/升级它(Debian软件包)这将是一种方式).

这对我来说似乎非常"手动",以至于将应用程序部署.war到应用程序服务器似乎是有利的,即使它们不适合这样的环境,只是为了获得工具支持的好处.

java deployment build-automation automation executable-jar

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

Spring集成 - 并发服务激活器

我有一个队列通道,以及一个带有轮询器的服务激活器,它从该队列中读取.我想要配置说"我想要50个线程来轮询该队列,每次轮询并获得一条消息,在这个线程上,调用service-activator指向的服务."

该服务没有@Async注释,但是无状态且可以安全地以并发方式运行.

下面会这样做吗?还有其他首选方法可以实现这一目标吗?

<int:channel id="titles">
    <int:queue/>
</int:channel>

<int:service-activator output-channel="resolvedIds" ref="searchService" method="searchOnTitle" input-channel="titles">
    <int:poller fixed-delay="100" time-unit="MILLISECONDS" task-executor="taskExecutor"></int:poller>
</int:service-activator>

<task:executor id="taskExecutor" pool-size="50" keep-alive="120" />
Run Code Online (Sandbox Code Playgroud)

concurrency spring asynchronous producer-consumer spring-integration

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

有没有Spring Retry文档?

我有兴趣了解有关Spring Retry的更多信息.在任何地方都有文件吗?我能找到的只是GitHub项目中的源代码.

spring spring-batch

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

ApplicationContextInitializer在非Web Spring上下文中?

我创建了一个ApplicationContextInitializer实现来从客户源(ZooKeeper)加载属性并将它们添加到ApplicationContext属性源列表中.

我能找到的所有文档都与Spring web-apps有关,但我想在一个独立的消息应用程序中使用它.

是实例化我的实现,创建上下文,然后将"上下文"传递给我的"手动"实现的正确方法吗?或者我错过了将我的初始化程序应用于我的上下文的框架的一些自动功能?

java spring applicationcontext

7
推荐指数
2
解决办法
6413
查看次数

Maven版本插件跳过更新检查

当我尝试使用versions:use-releases我的版本库时,标记为"已禁用",这意味着快照依赖项无法解析为版本.我不明白为什么存储库被视为禁用.

以下是构建的缩写调试输出:

[DEBUG]   (f) remoteArtifactRepositories = [       id: snapshots
      url: http://maven.live.hostname.net/content/repositories/snapshots/
   layout: default
snapshots: [enabled => true, update => daily]
 releases: [enabled => true, update => daily]
,        id: company-nexus
      url: http://maven.live.hostname.net/content/groups/public/
   layout: default
snapshots: [enabled => false, update => daily]
 releases: [enabled => true, update => daily]
]
[...]
[DEBUG] Looking for a release of promotion-test-central:promotion-test-central:jar:1.6.0-SNAPSHOT
[INFO] artifact promotion-test-central:promotion-test-central: checking for updates from snapshots
[DEBUG] Reading resolution-state from: /home/tester/.m2/repository/promotion-test-central/promotion-test-central/resolver-status.properties
[DEBUG] Writing resolution-state to: /home/tester/.m2/repository/promotion-test-central/promotion-test-central/resolver-status.properties
[DEBUG] Skipping update …
Run Code Online (Sandbox Code Playgroud)

nexus maven-3 maven

6
推荐指数
1
解决办法
1677
查看次数

限制对Elastic Beanstalk的HTTP访问

是否可以将对Elastic Beanstalk应用程序的HTTP访问限制为仅限于某些IP地址?我已经尝试向我的环境安全组添加规​​则,但这些似乎没有任何影响.这是因为所有HTTP流量都是通过Elastic Load Balancer路由的,而Elastic Load Balancer 不在安全组内吗?

security amazon-ec2 amazon-web-services amazon-elastic-beanstalk

6
推荐指数
2
解决办法
7344
查看次数

Gradle - 源和测试的不同JDK版本

如何配置Gradle来编译不同于源类的Java版本的测试类?

我正在为Java 1.7编写一个项目,我想在我的测试中使用Java 1.8,所以我可以使用Lambda Behave.在Maven中,这非常简单,但我无法看到如何在Gradle中实现相同的结果.

java gradle maven

6
推荐指数
1
解决办法
848
查看次数

Gradle-使用插件将配置应用于所有项目

在多项目Gradle构建中,如何将一小部分配置应用于所有使用特定插件的项目?

我想在运行测试时从基于Java的项目中看到更多输出。我发现了这个片段,它可以满足我的需求:

test {
    testLogging {
        events "passed", "skipped", "failed"
    }
}
Run Code Online (Sandbox Code Playgroud)

将其复制并粘贴到使用Java的六个项目中的五个中(其中一个使用Android插件)看起来并不优雅。我怎样才能一次放入,但是让Gradle不尝试将其应用于非Java项目?

java android gradle

6
推荐指数
1
解决办法
627
查看次数