【发布时间】:2012-09-18 21:27:09
【问题描述】:
我目前正在使用 IntelliJ IDEA 来构建我的项目,但我想摆脱它以打破对这个特定 IDE 的依赖。 Buildr 看起来是个不错的选择,因为 1) 它很简单,并且 2) 我已经了解 Ruby。
我的 IDEA 项目,它是一个 Java 库,目前看起来像这样:
/
/src/...
/sample_applications/
我可以将我的库构建为一个 JAR,目标是这样的,没有任何问题:
define 'my_library' do
project.version = '0.0.1'
package(:jar)
end
但我想为示例应用程序提供构建目标——这些应用程序依赖于my_library——使用相同的构建文件。如果我像这样创建另一个目标:
sample_layout = Layout.new
sample_layout[:source, :main, :scala] = 'sample_programs/simple_program.scala'
define 'simple_program', :layout => sample_layout do
project.version = '0.0.1'
package(:jar)
end
simple_program-0.0.1.jar 编译得很好,但不包括 my_library JAR。如果我通过将上述定义修改为:
define 'simple_program', :layout => sample_layout do
project.version = '0.0.1'
package(:jar).path("lib").tap do |p|
p.include artifact('my_library').to_s
end
end
然后我收到如下错误: RuntimeError : {:group=>"my_library"}
缺少工件标识符如何在同一个构建文件中引用我之前在另一个项目中创建的 JAR?
【问题讨论】: