我想将我的项目打包在一个可执行的JAR中进行分发.
如何将所有依赖JAR的Maven项目打包到我的输出JAR中?
我想得到我的Git存储库的提交数量,有点像SVN版本号.
目标是将其用作唯一的递增构建号.
我目前在Unix/Cygwin/msysGit上喜欢这样:
git log --pretty=format:'' | wc -l
Run Code Online (Sandbox Code Playgroud)
但我觉得这有点像黑客.
有没有更好的方法呢?如果我真的不需要wc
甚至是Git 会很酷,所以它可以在裸Windows上工作.只需读取文件或目录结构......
如何将后期构建事件限制为仅针对一种类型的构建运行?我正在使用事件将DLL复制到本地IIS虚拟目录,但我不希望在发布模式下在构建服务器上发生这种情况.
我有一个包含单个模块和一些依赖项的项目.我想在一个单独的目录中创建一个包含已编译模块的jar.另外,我希望我的模块旁边有依赖项.
无论我如何扭曲IntelliJ的"构建jar"进程,我模块的输出都显示为空(除了META-INF文件).
我有一个父项目多模块Maven项目P
和三个子模块A
,B
和C
.这两个B
和C
是战项目,都依赖于A
.
我可以输入mvn compile
在P
和拥有所有的子模块正确的编译的.当我想为特定模块执行操作时,问题就来了.
我希望能够为项目打包一个war B
,但是当我从B
目录运行package命令时,它会抱怨它找不到依赖项A
.
我从这个问题中理解:Maven和依赖模块可能Maven并不是真的设计用于这种类型的依赖解析,但这引出了如何打包的问题B
?
mvn package
我真的想要的时候是否必须运行整个项目层次结构B
?
每次要打包时,是否必须将A的快照安装到本地存储库中B
?
当A
仍处于活跃开发阶段时,第二种情况并不是很有趣.
这里有什么最佳做法?
针对Java的另一个构建工具真的让我感到满意吗?
如果你使用Gradle而不是其他工具,为什么?
我是webpack的新手,我需要设置一下来生成源图.我正在webpack serve
从命令行运行,它成功编译.但我真的需要源图.这是我的webpack.config.js
.
var webpack = require('webpack');
module.exports = {
output: {
filename: 'main.js',
publicPath: '/assets/'
},
cache: true,
debug: true,
devtool: true,
entry: [
'webpack/hot/only-dev-server',
'./src/components/main.js'
],
stats: {
colors: true,
reasons: true
},
resolve: {
extensions: ['', '.js', '.jsx'],
alias: {
'styles': __dirname + '/src/styles',
'mixins': __dirname + '/src/mixins',
'components': __dirname + '/src/components/',
'stores': __dirname + '/src/stores/',
'actions': __dirname + '/src/actions/'
}
},
module: {
preLoaders: [{
test: /\.(js|jsx)$/,
exclude: /node_modules/,
loader: 'jsxhint'
}],
loaders: …
Run Code Online (Sandbox Code Playgroud) 在多项目构建中似乎有几种方法来构建父pom,我想知道是否有人对每种方式的优点/缺点有任何想法.
拥有父pom的最简单方法是将它放在项目的根目录中,即
myproject/
myproject-core/
myproject-api/
myproject-app/
pom.xml
Run Code Online (Sandbox Code Playgroud)
其中pom.xml既是父项目又是-core -api和-app模块
下一个方法是将父项分离到它自己的子目录中,如中所示
myproject/
mypoject-parent/
pom.xml
myproject-core/
myproject-api/
myproject-app/
Run Code Online (Sandbox Code Playgroud)
父pom仍然包含模块,但它们是相对的,例如../myproject-core
最后,有一个选项,模块定义和父项分开,如
myproject/
mypoject-parent/
pom.xml
myproject-core/
myproject-api/
myproject-app/
pom.xml
Run Code Online (Sandbox Code Playgroud)
父pom包含任何"共享"配置(dependencyManagement,属性等),myproject/pom.xml包含模块列表.
目的是可扩展到大规模构建,因此应该可以扩展到大量项目和工件.
一些奖金问题:
编辑:每个子项目都有自己的pom.xml,我把它留了下来以保持简洁.
是否有可用于构建规则等的Xcode环境变量的规范列表?
我有一个专有的jar,我想作为依赖添加到我的pom.
但我不想将它添加到存储库.原因是我希望我的常用maven命令等mvn compile
开箱即用.(没有要求开发人员将其自己添加到某个存储库中).
我希望jar在源代码控制中位于第3方库中,并通过pom.xml文件的相对路径链接到它.
可以这样做吗?怎么样?
build-process ×10
java ×6
maven-2 ×4
ant ×1
babeljs ×1
build ×1
clang ×1
dependencies ×1
git ×1
gradle ×1
jar ×1
javascript ×1
maven ×1
revision ×1
source-maps ×1
webpack ×1
xcode ×1