@@ -309,61 +309,58 @@ createBaseXml.inputs.files configurations.corelibs.resolve()
309309createBaseXml. outputs. file " jme3-core-baselibs/nbproject/project.xml"
310310createBaseXml. outputs. file " jme3-core-libraries/nbproject/project.xml"
311311
312- tasks. register(' copyProjectLibs' ) {
313- dependsOn configurations. corelibs, configurations. testdatalibs
314- doLast {
315- description = " Copies the jar files needed to supply the J2SE Libraries in the " +
316- " SDK to jme3-project-baselibs and jme3-project-libraries"
312+ tasks. register(' copyProjectBaseLibraries' , Copy ) {
313+ description = ' Copies JME base libraries (jars, sources, javadocs)'
317314
318- // for each dependency in corelibs and optlibs..
319- def deps = []
320- deps. addAll(project. configurations. corelibs. files)
321- deps. addAll(project. configurations. optlibs. files)
322- deps. each { dep ->
323- // copy jme3 jar files, sources and javadocs to jme3-project-baselibs
315+ from(configurations. corelibs)
316+ from(configurations. optlibs)
324317
325- if (isSource(dep. name)) {
326- copy {
327- from dep
328- into " jme3-project-baselibs/release/libs/"
329- }
330- } else if (isJavadoc(dep. name)) {
331- copy {
332- from dep
333- into " jme3-project-baselibs/release/libs/"
334- }
335- } else if (isJmeDep(dep. name)) {
336- copy {
337- from dep
338- into " jme3-project-baselibs/release/libs/"
339- }
340- } else {
341- copy {
342- from dep
343- into " jme3-project-libraries/release/libs/"
344- }
345- }
318+ include { details ->
319+ def name = details. file. name
320+ isSource(name) || isJavadoc(name) || isJmeDep(name)
321+ }
346322
347- }
323+ into " jme3-project-baselibs/release/libs/ "
348324
349- project. configurations. testdatalibs. files. each { dep ->
350- // copy jme3 test data to jme3-project-testdata
351- if (isJmeDep(dep. name)) {
352- copy {
353- from dep
354- into " jme3-project-testdata/release/modules/ext/"
355- rename(" jme3-testdata(.*)" , " jme3-testdata.jar" )
356- }
357- }
358- }
325+ includeEmptyDirs = false
326+ duplicatesStrategy = DuplicatesStrategy . INCLUDE
327+ }
328+
329+ tasks. register(' copyProjectLibraries' , Copy ) {
330+ description = ' Copies third-party project libraries'
331+
332+ from(configurations. corelibs)
333+ from(configurations. optlibs)
334+
335+ exclude { details ->
336+ def name = details. file. name
337+ isSource(name) || isJavadoc(name) || isJmeDep(name)
338+ }
339+
340+ into " jme3-project-libraries/release/libs/"
341+
342+ includeEmptyDirs = false
343+ duplicatesStrategy = DuplicatesStrategy . INCLUDE
344+ }
345+
346+ tasks. register(' copyProjectTestData' , Copy ) {
347+ description = ' Copies jme3 test data'
348+
349+ from(configurations. testdatalibs) {
350+ include { isJmeDep(it. file. name) }
359351 }
352+
353+ into " jme3-project-testdata/release/modules/ext/"
354+
355+ rename(/ jme3-testdata(.*)/ , ' jme3-testdata.jar' )
356+
357+ includeEmptyDirs = false
358+ }
359+
360+ tasks. register(' copyProjectLibs' ) {
361+ description = ' Copies all project libraries and test data'
362+ dependsOn ' copyProjectBaseLibraries' , ' copyProjectLibraries' , ' copyProjectTestData'
360363}
361- copyProjectLibs. inputs. files configurations. corelibs. resolve()
362- copyProjectLibs. inputs. files configurations. optlibs. resolve()
363- copyProjectLibs. inputs. files configurations. testdatalibs. resolve()
364- copyProjectLibs. outputs. dir " jme3-project-baselibs/release/libs/"
365- copyProjectLibs. outputs. dir " jme3-project-libraries/release/libs/"
366- copyProjectLibs. outputs. dir " jme3-project-testdata/release/modules/ext/"
367364
368365// workaround method to add a tag with the name "name" and "file" to an XML MarkupBuilder
369366static def makeName (builder , nameR ) { builder. name nameR }
0 commit comments