将多项目gradle结构应用于项目时,我的settings.gradle如下所示:
include "source:compA:api"
include "source:compA:core"
include "source:compB"
Run Code Online (Sandbox Code Playgroud)
gradle项目给了我
Root project 'tmp'
\--- Project ':source'
+--- Project ':source:compA'
| +--- Project ':source:compA:api'
| \--- Project ':source:compA:core'
\--- Project ':source:compB'
Run Code Online (Sandbox Code Playgroud)
这正是目录结构!
在我的根目录中,我有一个build.gradle,它将java插件应用于所有子项目:
subprojects {
apply plugin: 'java'
}
Run Code Online (Sandbox Code Playgroud)
构建时我最终得到了工件:source:compA是空的,因为这实际上不是一个项目,只是子目录api和core是正确的java项目.
什么是避免空洞人工制品的最佳方法?
我正在阅读" 在Erlang中思考"这本书.在"图10:案例示例"中,它有以下示例:
many(X) ->
case X of
[] ->
none;
[ _One ] ->
one;
[ _One, _Two ] ->
two;
[ _One, _Two , _Three | _Tail ] ->
many
end.
Run Code Online (Sandbox Code Playgroud)
它说 :
如果你想知道为什么第9行不匹配[_One,_Two | _Tail],查看上一节末尾列表尾的列表匹配规则.
但如果我真的匹配[_One,_Two | _Tail]一切仍然按预期工作.书中有错误还是我弄错了?