@@ -264,6 +264,27 @@ task packageDistroWithDependencies(type: Zip, dependsOn: buildDistroWithDependen
264
264
265
265
assemble. dependsOn packageLanguages, packageTests
266
266
267
+ static def addDependency (Object pom , Object groupId , Object artifactId , Object version , Object type = null ) {
268
+ pom. withXml { XmlProvider prov ->
269
+ Node root = prov. asNode()
270
+ Node deps = root. dependencies[0 ] ?: root. appendNode(" dependencies" )
271
+ def dep = deps. appendNode(" dependency" )
272
+ dep. appendNode(" groupId" , groupId)
273
+ dep. appendNode(" artifactId" , artifactId)
274
+ dep. appendNode(" version" , version)
275
+ if (type != null ) {
276
+ dep. appendNode(" type" , type)
277
+ }
278
+ }
279
+ }
280
+
281
+ static def addDependency (Object pom , Configuration config ) {
282
+ config. resolvedConfiguration. firstLevelModuleDependencies. each {
283
+ addDependency(pom, it. moduleGroup, it. moduleName, it. moduleVersion, it. moduleArtifacts[0 ]. type)
284
+ }
285
+
286
+ }
287
+
267
288
publishing {
268
289
repositories {
269
290
maven {
@@ -296,39 +317,16 @@ publishing {
296
317
groupId ' org.iets3'
297
318
artifactId ' opensource'
298
319
artifact packageLanguages
299
- pom. withXml {
300
- def dependenciesNode = asNode(). appendNode(' dependencies' )
301
- configurations. languageLibs. resolvedConfiguration. firstLevelModuleDependencies. each{
302
- def dependencyNode = dependenciesNode. appendNode(' dependency' )
303
- dependencyNode. appendNode(' groupId' , it. moduleGroup)
304
- dependencyNode. appendNode(' artifactId' , it. moduleName)
305
- dependencyNode. appendNode(' version' , it. moduleVersion)
306
- dependencyNode. appendNode(' type' , it. moduleArtifacts[0 ]. type)
307
- }
308
- configurations. mps. resolvedConfiguration. firstLevelModuleDependencies. each{
309
- def dependencyNode = dependenciesNode. appendNode(' dependency' )
310
- dependencyNode. appendNode(' groupId' , it. moduleGroup)
311
- dependencyNode. appendNode(' artifactId' , it. moduleName)
312
- dependencyNode. appendNode(' version' , it. moduleVersion)
313
- dependencyNode. appendNode(' type' , it. moduleArtifacts[0 ]. type)
314
- dependencyNode. appendNode(' scope' , ' provided' )
315
- }
316
- }
320
+
321
+ addDependency(pom, configurations. languageLibs)
317
322
}
323
+
318
324
tests(MavenPublication ) {
319
325
groupId ' org.iets3.opensource'
320
326
artifactId ' tests'
321
327
artifact packageTests
322
- pom. withXml {
323
- def dependenciesNode = asNode(). appendNode(' dependencies' )
324
- configurations. mps. resolvedConfiguration. firstLevelModuleDependencies. each{
325
- def dependencyNode = dependenciesNode. appendNode(' dependency' )
326
- dependencyNode. appendNode(' groupId' , it. moduleGroup)
327
- dependencyNode. appendNode(' artifactId' , it. moduleName)
328
- dependencyNode. appendNode(' version' , it. moduleVersion)
329
- dependencyNode. appendNode(' type' , it. moduleArtifacts[0 ]. type)
330
- }
331
- }
328
+
329
+ addDependency(pom, ' org.iets3' , ' opensource' , project. version, ' zip' )
332
330
}
333
331
334
332
def runtimesDir = new File (artifactsDir, ' org.iets3.opensource/org.iets3.core.os/languages/iets3.core.os' )
@@ -357,15 +355,7 @@ publishing {
357
355
classifier ' sources'
358
356
}
359
357
360
- pom. withXml {
361
- def deps = asNode(). appendNode(' dependencies' )
362
-
363
- // depends on shared
364
- def dep = deps. appendNode(' dependency' )
365
- dep. appendNode(' groupId' , ' org.iets3.core.expr.base.shared' )
366
- dep. appendNode(' artifactId' , ' shared-runtime' )
367
- dep. appendNode(' version' , project. version)
368
- }
358
+ addDependency(pom, ' org.iets3.core.expr.base.shared' , ' shared-runtime' , project. version)
369
359
}
370
360
371
361
' org.iets3.core.expr.datetime.runtime' (MavenPublication ) {
@@ -379,15 +369,7 @@ publishing {
379
369
classifier ' sources'
380
370
}
381
371
382
- pom. withXml {
383
- def deps = asNode(). appendNode(' dependencies' )
384
-
385
- // depends on shared
386
- def dep = deps. appendNode(' dependency' )
387
- dep. appendNode(' groupId' , ' org.iets3.core.expr.base.shared' )
388
- dep. appendNode(' artifactId' , ' shared-runtime' )
389
- dep. appendNode(' version' , project. version)
390
- }
372
+ addDependency(pom, ' org.iets3.core.expr.base.shared' , ' shared-runtime' , project. version)
391
373
}
392
374
393
375
' org.iets3.core.expr.temporal.runtime' (MavenPublication ) {
@@ -400,15 +382,8 @@ publishing {
400
382
builtBy buildLanguages
401
383
classifier ' sources'
402
384
}
403
- pom. withXml {
404
- def deps = asNode(). appendNode(' dependencies' )
405
-
406
- // depends on datetime
407
- def dep = deps. appendNode(' dependency' )
408
- dep. appendNode(' groupId' , ' org.iets3.core.expr.datetime' )
409
- dep. appendNode(' artifactId' , ' datetime-runtime' )
410
- dep. appendNode(' version' , project. version)
411
- }
385
+
386
+ addDependency(pom, ' org.iets3.core.expr.datetime' , ' datetime-runtime' , project. version)
412
387
}
413
388
}
414
389
}
0 commit comments