Tag: build process

Gradle Multiproject Build:如何在不创建伪项目的情况下将WAR项目的JAR包含到另一个WAR中

我有两个网络应用程序A和B B使用来自A部分代码。 如果我A声明为B的依赖关系,则A.war包含在A.war的WEB-INF/lib中 这种包含对容器毫无意义。 我看到的唯一解决方案是将A更改为Java项目(JAR)并创建名为A_WEB的虚拟Web项目(WAR)。 然后A声明为A_WEB和B依赖关系 然而,这将要求我干预项目结构。 选择gradle的一个重要原因是它承诺不会像maven那样使项目适应工具。 所以我希望有一种非常混乱的方法。

有没有办法让Maven构建独立于网络连接?

我正在持续集成环境中工作,部分自动构建过程包括Maven托管项目的编译。 我想知道的是,是否有办法使Maven构建独立于网络连接。 目前我们需要在存储库中安装所有需要的jar,但问题是Maven尝试检查插件更新,如果最终连接断开,则会导致构建失败。

如何强制代码样式格式化作为构建的一部分?

有没有办法(使用ANT),可以自动重新格式化代码以遵循某些约定? 我有几个开发人员正在开发一个程序,并且希望保证代码格式在构建时在提交之前在所有类中变得一致

不要在某台机器上运行Spring @Scheduled任务

我们的网络应用程序几乎没有计划任务,我们非常喜欢Spring的这个function,许多人已经开始依赖它了。 我们有一台’试用’机器,与prod机器共享相同的配置/ db。 由于此机器指向与prod机器相同的db,因此当它运行计划任务时 – 它可能会影响prod数据。 有没有办法不在这台机器上运行Spring Scheduled任务? 我们考虑过依赖机器名称,但是每次任务开始时都不想引入检查。 有什么建议么?

为什么我的ANTLR构建Ant任务失败并且“无法确定生成的类”?

我正在尝试为Ant使用ANTLR3任务 ,但是我得到了“无法确定生成的类”构建失败消息。 一项快速研究表明,许多人遇到了同样的问题,没有提供解决方案(见下面的链接)。 有人可以提出一个不使用常规Java Ant任务的解决方案吗? 外部链接: http://www.antlr.org/pipermail/antlr-interest/2009-November/036795.html http://www.antlr.org/pipermail/antlr-interest/2006-July/016870.html http://palove.kadeco.sk/itblog/posts/40

将sourcesJar任务添加到自定义Gradle插件

我的公司最近编写了用于vanilla配置的gradle插件(存储库,跨项目的公共依赖项等)。 总的来说,这大大简化了我们的构建过程,并发现了不同项目之间的一些不一致。 我们最近尝试将一个sourcesJar任务添加到插件中,但它无法正常工作。 这是破碎的插件: package com.mycompany.plugins import org.gradle.api.Project import org.gradle.api.Plugin import org.gradle.api.tasks.bundling.Jar class OurJavaPlugin implements Plugin { void apply(Project project) { def date = com.mycompany.util.UtilityFunctions.getDate() project.configure(project) { println(‘Applying Java properties to: ‘ + project.name) apply plugin: ‘java’ apply plugin: ‘maven’ apply plugin: ‘idea’ apply plugin: ‘eclipse’ version = date // Use the local repos repositories […]

如何使用Ant?

我一直试图了解Ant的用途,但我仍然没有得到它。 有人可以给我一个用于Ant的用例,我可以尝试看看为什么Ant有用以及我可以用它做什么样的事情? 我在Eclipse中进行Java开发,我刚刚开始使用servlet和Google Web Toolkit。

当WAR的大小为41M时,如何避免在WAR中复制40M的java lib?

目前,我的构建过程包括使用WEB-INF / lib下的所有必需的Java库重新打包war文件,然后将war文件复制到由tomcat重新部署的开发/演示/生产服务器。 打包的war文件大小约为41M,目前它有40M的外部java库。 一定有更好的方法。 你是怎么解决这个问题的? 我的开发机器是一个Windows框,Eclipse作为我的IDE,Ant作为我的构建工具。 这些服务器都是带有Tomcat 5.5的Linux机器。 我是否应该将jar文件添加到服务器端的war包中?

Gradle:战争任务有冲突包含/排除

我正在尝试使用Gradle构建一个war文件,但是我遇到了一个问题,不包括一个目录,并且包含另一个恰好具有相同名称但不同父目录的目录。 请注意下面的第一个代码示例中, css/目录都没有包含在最终的war文件中 – 我假设因为Gradle认为我想要排除任何名为css/ 目录而不管其绝对路径。 基本上我想排除src/main/webapp/css并包含build/tmp/css因为后者包含缩小的代码。 我怎样才能做到这一点? 我已尝试以各种方式指定绝对路径,但没有取得任何成功。 war { dependsOn minify from(‘build/tmp/’) { include (‘css/’) } exclude(‘WEB-INF/classes/’, ‘css/’) } 如果我不排除css/ like,那么: war { dependsOn minify from(‘build/tmp/’) { include (‘css/’) } exclude(‘WEB-INF/classes/’) } 然后结果是包括缩小和非缩小代码。

Cobertura ant脚本缺少Log4J类

我试图让Cobertura在我的ant剧本中运行,但我在开始时就被困住了。 当我尝试插入cobertura taskdef时,我错过了Log4J库。 Ant属性和类路径 我的目标 我想我做了Cobertura文档中描述的所有内容,但我得到了这个 Ant构建错误 BUILD FAILED build.xml:95: java.lang.NoClassDefFoundError: org/apache/log4j/Logger 在$ {cobertura.dir}里面有一个包含所有文件的lib目录。 我将它从cobertura发行版ZIP直接解压缩到该目录中。 我错过了一步吗? 到目前为止,我的配置出了什么问题?