有没有人知道在构建时如何(或进程)从Java类文件中删除注释?当使用Ant构建项目时,我想为项目中的特定包执行此操作.任何ANT脚本或一些自定义代码都是最受欢迎的.
我在.NET解决方案上工作,我想从TeamCity下载源代码和二进制文件.这就是我配置构建工件的原因.我对工件路径的配置
src\app\Debug\* => debug
src\**\* => source
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.但是我想跳过工件中的一些文件夹,例如我想要跳过的源工件中
源\应用\调试
那有什么简单的解决方案吗?非常感谢!
PS一旦这个问题排序,我将拉链文物
.net build-automation teamcity continuous-integration artifacts
我在我们的两个内部项目中使用了一些类库.其中一个内部项目针对.NET 4.0框架,而另一个针对.NET 2.0.我正在使用LinqBridge来获得2.0项目中更高版本.NET的一些细节.
为了在两个项目中正确使用类库,我需要将一个版本(使用LinqBridge)编译为.NET 2.0 Framework,将另一个版本(使用标准System.Linq)编译为.NET 4.0.
我想避免每次都手动执行此操作.我希望有一种方法可以在Build Events部分中指定当前目标框架的内容,但看起来没有宏.我一般不熟悉手动编辑构建配置.为单个项目定位两个框架的正确方法是什么?
假设我有一个pom文件,
<version>14.4.1-SNAPSHOT</version>
Run Code Online (Sandbox Code Playgroud)
它定义了要构建的项目的版本.该值由我们的构建系统(jenkins)自动更新.
稍后,在其中一个插件中,我需要一个属性,其中包含版本中的前两个数字,因此对于14.4.1-SNAPSHOT值,它将是"14.4",并且对于13.12.39-SNAPSHOT价值将是"13.12".
目前,我们每月手动更新此值:
<plugins>
<plugin>
<groupId>org.liquibase</groupId>
<artifactId>liquibase-maven-plugin</artifactId>
<version>2.0.1</version>
<executions>
<execution>
<id>default-cli</id>
<phase>process-resources</phase>
<configuration>
<changeLogFile>src/main/resources/14.4/changeLog.xml</changeLogFile>
Run Code Online (Sandbox Code Playgroud)
理想情况下,我希望有类似的东西
<changeLogFile>src/main/resources/${releaseVersion}/changeLog.xml</changeLogFile>
Run Code Online (Sandbox Code Playgroud)
但是如何${releaseVersion}自动计算出这个(= 14.4)<version>14.4.1-SNAPSHOT</version>?
在这种情况下,它绝对是自动化的,我们没有任何手动流程.是否有任何表达式 - 我可以在pom文件中使用哪种语言,它可以解析字符串 14.4.1-SNAPSHOT并从中生成一个14.4?
为了加速我的NAnt/CruiseControl.Net/Ivy连续构建过程,我希望让NAnt在执行基于NAnt的更新后检查我的代码库是否在我的本地PC上发生了变化,然后如果代码已经改变,然后启动流程重新构建该项目,并可能提出一个标志来构建所有后续组件,而不管它们的更改状态如何.
原因是,我的构建过程目前花费了超过12分钟来完成大量工作,我想我可以通过不构建不会改变的代码以及保持开发人员来减少这段时间在办公室也更开心.
我们已经调查过从构建顺序中删除一些项目,但是如果构建树顺序进一步发生任何更改,它们都是必需的.
我想为我正在研究的项目添加一个持续集成工具.但是,我希望能够使用Lotus Notes发送构建结果.我已经涵盖了Lotus Notes部分,我希望你们帮我选择合适的工具.我会先用Java来做些什么,但是如果别的东西更好,我也不介意.
请仅提供我可以以某种方式影响构建过程的解决方案.
" 乔尔测试:改进代码的12个步骤 " 的第二步说明"你能一步完成构建吗?".我对此的回答目前没有.我的申请结构如下:
+
+-MyApp // this is just a vanilla Java Application
+-MyWebApp // this Dynamic Java Web Application (deployed Tomcat and launches
// a thread contained in MyApp)
+-MyCommonStuff // these are common classes shared between MyApp and MyWebApp
// Ex. Database access code & business classes
Run Code Online (Sandbox Code Playgroud)
为了构建和部署我的软件,我执行以下步骤:
1.从svn检出MyApp,MyWebApp,MyCommonStuff
2.构建MyCommonStuff.jar并复制到"libs"目录
3.构建MyApp并复制到"libs"目录
4.构建MyWebApp.war(Ant build.xml文件指定MyApp.jar和MyCommonStuff.jar所在的位置)5.build.xml
的deploy部分使用Tomcat部署任务部署到tomcat服务器.
我的问题是上面的Joel规则是否适用于这种情况.即应该有一个"主"构建脚本执行步骤1到5.
该脚本应该是一个普通的#/ bin/sh脚本,还是我可以使用的工具.我倾向于坚持使用Ant和linux控制台命令.
谢谢
是否有一个开源项目可以作为有关如何使用Maven网站插件生成报告的很好的例子?我宁愿
想法是拥有一些东西,您可以在其中收集有关如何完成和可能实现的想法。
在构建黑莓应用程序时,是否有人可以建议用于构建过程的最佳构建工具.
它只是创建一个ANT项目,是否应对签名等?
那里有更好的工具吗?我更喜欢轻量级的Windows解决方案.
我通常使用Automated Build Studio - 它可以构建ANT并且它也可以编译Java.
应该使用哪些工具来自动化Grails构建?蚂蚁?贝壳?阅读一些关于它的官方文档会很好.
我是架构迁移的新手,所以我有点迷茫:
LiquiBase:模式迁移,Maven:构建自动化,Jenkins:持续集成.我正在使用bitBucket进行源代码控制.
我可以通过命令行,Maven或Jenkins运行LiquiBase.
如果Jenkins没有构建自动化2.我可以使用pom.xml中的LiquiBase Maven插件连接LiquiBase和Maven.然后使用Jenkins Maven插件或任何其他方式将其连接到Jenkins?
build-automation continuous-integration liquibase maven jenkins
我试图让我的Makefile只在文件发生变化时才重新编译,它对Java目标起着很好的作用,但不适用于JS.报告没有任何错误,但是当我make bundle第二次运行时,它仍然会重新运行所有这些命令.
find ...手动运行的输出似乎产生了预期的结果,没有额外或缺少的线.
JAVA_SRC_DIR := .
JAVA_SOURCES := $(shell find $(JAVA_SRC_DIR) -name '*.java' -o -name '*pom.xml')
JS_SRC_DIR := ./ui-bundle
JS_EXCLUDE := \(node_modules\|coverage\)
JS_SOURCES := $(shell find $(JS_SRC_DIR) -name '*.js' -o -name '*.jsx' -o -name '.babelrc' -o -name 'package.json' | grep -v $(JS_EXCLUDE) | grep -v -e '^$')
bundle: $(JS_SOURCES)
npm install
./node_modules/jest-cli/bin/jest.js --verbose
./node_modules/gulp/bin/gulp.js package
service: $(JAVA_SOURCES)
mvn clean install -pl "!integration"
Run Code Online (Sandbox Code Playgroud)
我猜这与它有关,但是当我试图找到哪些文件make认为已经改变时make -d | grep "\(older\|newer\)"它没有找到任何东西,但make -d最后得出结论:
Finished prerequisites …Run Code Online (Sandbox Code Playgroud)