我想将我的项目打包在一个可执行的JAR中进行分发.
如何将所有依赖JAR的Maven项目打包到我的输出JAR中?
Gradle对我和新的Android开发人员都有点困惑.任何人都可以解释Android Studio中的gradle是什么以及它的目的是什么?为什么Gradle包含在Android Studio中?
build-automation gradle android-studio android-gradle-plugin
我正在尝试使用Grunt作为我的webapp的构建工具.
我想要至少有两个设置:
I.开发设置 - 从单独的文件加载脚本,没有连接,
所以我的index.html看起来像:
<!DOCTYPE html>
<html>
<head>
<script src="js/module1.js" />
<script src="js/module2.js" />
<script src="js/module3.js" />
...
</head>
<body></body>
</html>
Run Code Online (Sandbox Code Playgroud)
II.生产设置 - 在一个文件中加载我的脚本缩小和连接,
与index.html相关:
<!DOCTYPE html>
<html>
<head>
<script src="js/MyApp-all.min.js" />
</head>
<body></body>
</html>
Run Code Online (Sandbox Code Playgroud)
现在的问题是,如何才能让咕噜使这些的index.html的取决于配置,当我运行grunt dev
或grunt prod
?
或者也许我正在挖掘错误的方向并且总是生成更容易MyApp-all.min.js
但是将所有脚本(连接)或从异步文件中异步加载这些脚本的加载器脚本放入其中?
伙计们,你是怎么做到的?
我正在尝试在我们的超级pom中定义一个属性,它将被所有子项目用作生成的工件的目标.
为此,我考虑使用project/build/finalName但这似乎不起作用,即使对于简单的poms:
命令
mvn archetype:create \
-DarchetypeGroupId=org.apache.maven.archetypes \
-DgroupId=com.mycompany.app \
-DartifactId=my-app
Run Code Online (Sandbox Code Playgroud)
POM
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>my-app</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<build>
<finalName>${project.name}-testing</finalName>
</build>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
Run Code Online (Sandbox Code Playgroud)
$ mvn install
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building my-app
[INFO] task-segment: [install]
[INFO] ------------------------------------------------------------------------
[INFO] [resources:resources {execution: default-resources}]
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /tmp/mvn_test/my-app/src/main/resources
[INFO] [compiler:compile {execution: default-compile}]
[INFO] Nothing …
Run Code Online (Sandbox Code Playgroud) 是否存在仅在给定文件存在时才执行块的ANT任务?我有一个问题,我有一个通用的ant脚本,应该做一些特殊的处理,但只有在存在特定的配置文件.
我正在与C#项目上的一个小型(4人)开发团队合作.我已经提议建立一个构建机器,它将对项目进行夜间构建和测试,因为我知道这是一件好事.麻烦的是,我们这里没有足够的预算,所以我必须证明费用是合理的.所以我想知道:
我意识到这是一个非常大的话题,我刚刚开始.我在这里找不到这个问题的副本,如果那里有一本书我应该得到,请告诉我.
编辑:我终于开始工作了!Hudson非常棒,FxCop表明我们认为实现的一些功能实际上是不完整的.我们还必须将安装程序类型从Old-And-Busted vdproj更改为New Hotness WiX.
基本上,对于那些正在关注的人,如果你可以从命令行运行你的构建,那么你可以把它放到哈德森.通过MSBuild从命令行运行构建本身就是一个很有用的练习,因为它会强制你的工具是最新的.
在多核/多CPU机器上使用maven构建时,通常可以并行构建不同的子项目.有没有办法用maven做到这一点?这个/什么都有插件?
根据实际经验,我想问你哪个自动构建环境更好.我打算做一些.Net和一些Java开发,所以我想有一个支持这两个平台的工具.
我一直在阅读并了解CruiseControl.NET,用于stackoverflow开发,以及TeamCity,它支持在不同操作系统平台上构建代理并基于不同的编程语言.所以,如果你对这两者都有一些实际经验,你更喜欢哪一个?为什么?
目前,我最感兴趣的是该工具的易用性和管理,更不用说CC是开源的,而且当你有很多项目要运行时,TC在某些时候需要获得许可(因为,我需要它用于少量项目).
此外,如果有其他工具满足上述要求并且您认为值得推荐 - 请随意将其纳入讨论.
cruisecontrol.net build-automation teamcity continuous-integration cruisecontrol
有没有人知道一种递归删除工作副本中不受版本控制的所有文件的方法?(我需要这样才能在自动构建VMware中获得更可靠的结果.)
互联网上有很多关于Maven如何糟糕的话题.我已经使用Maven的一些功能已经有几年了,我认为最重要的好处是依赖管理.
Maven文档不够充分,但通常当我需要完成某些事情时我会弄清楚它然后它可以工作(例如当我实现签署jar时).我不认为Maven是伟大的,但它确实解决了一些问题,没有它将是一个真正的痛苦.
那么,为什么Maven会有如此糟糕的代表,以及Maven在未来会遇到什么问题呢?也许还有更多我不了解的替代方案?(例如,我从未详细看过常春藤.)
注意:这不是导致争论的尝试.这是尝试清除FUD.