You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@polygene.apache.org by pa...@apache.org on 2016/12/24 10:29:20 UTC
[08/19] zest-java git commit: build: decouple project names from
built artifact names
build: decouple project names from built artifact names
we can now do:
./gradlew core:runtime:test
instead of:
./gradlew org.apache.polygene.core:org.apache.polygene.core.runtime:test
so much less typing
produced artifacts are the same as before
Project: http://git-wip-us.apache.org/repos/asf/zest-java/repo
Commit: http://git-wip-us.apache.org/repos/asf/zest-java/commit/05c8141f
Tree: http://git-wip-us.apache.org/repos/asf/zest-java/tree/05c8141f
Diff: http://git-wip-us.apache.org/repos/asf/zest-java/diff/05c8141f
Branch: refs/heads/develop
Commit: 05c8141f11277feb87eb0a1a35fe5300ce75d106
Parents: cba29f6
Author: Paul Merlin <pa...@apache.org>
Authored: Sun Dec 18 01:36:08 2016 +0100
Committer: Paul Merlin <pa...@apache.org>
Committed: Sun Dec 18 01:36:08 2016 +0100
----------------------------------------------------------------------
.../polygene/gradle/AllProjectsPlugin.groovy | 4 +--
.../polygene/gradle/CodeProjectsPlugin.groovy | 26 ++++++++++++++++
.../polygene/gradle/PolygeneExtension.groovy | 8 ++---
.../polygene/gradle/RootProjectPlugin.groovy | 2 +-
settings.gradle | 32 ++------------------
.../introduction/thirtyminutes/build.gradle | 2 +-
6 files changed, 36 insertions(+), 38 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/zest-java/blob/05c8141f/buildSrc/src/main/groovy/org/apache/polygene/gradle/AllProjectsPlugin.groovy
----------------------------------------------------------------------
diff --git a/buildSrc/src/main/groovy/org/apache/polygene/gradle/AllProjectsPlugin.groovy b/buildSrc/src/main/groovy/org/apache/polygene/gradle/AllProjectsPlugin.groovy
index 6c9a2c0..0edf1e2 100644
--- a/buildSrc/src/main/groovy/org/apache/polygene/gradle/AllProjectsPlugin.groovy
+++ b/buildSrc/src/main/groovy/org/apache/polygene/gradle/AllProjectsPlugin.groovy
@@ -42,9 +42,9 @@ class AllProjectsPlugin implements Plugin<Project>
void apply( final Project project )
{
project.defaultTasks = [ 'classes', 'test' ]
- project.group = project.name == 'org.apache.polygene' ?
+ project.group = project.rootProject == project ?
'org.apache.polygene' :
- project.name.substring( 0, project.name.lastIndexOf( '.' ) )
+ "org.apache.polygene.${ project.path.split( ':' ).drop( 1 ).dropRight( 1 ).join( '.' ) }"
applyDefaultVersion( project )
applyPolygeneExtension( project )
http://git-wip-us.apache.org/repos/asf/zest-java/blob/05c8141f/buildSrc/src/main/groovy/org/apache/polygene/gradle/CodeProjectsPlugin.groovy
----------------------------------------------------------------------
diff --git a/buildSrc/src/main/groovy/org/apache/polygene/gradle/CodeProjectsPlugin.groovy b/buildSrc/src/main/groovy/org/apache/polygene/gradle/CodeProjectsPlugin.groovy
index 6aa345b..5eeaca0 100644
--- a/buildSrc/src/main/groovy/org/apache/polygene/gradle/CodeProjectsPlugin.groovy
+++ b/buildSrc/src/main/groovy/org/apache/polygene/gradle/CodeProjectsPlugin.groovy
@@ -25,6 +25,7 @@ import org.gradle.api.Plugin
import org.gradle.api.Project
import org.gradle.api.plugins.JavaPluginConvention
import org.gradle.api.plugins.osgi.OsgiManifest
+import org.gradle.api.tasks.bundling.AbstractArchiveTask
import org.gradle.api.tasks.javadoc.Javadoc
import org.gradle.jvm.tasks.Jar
import org.gradle.testing.jacoco.plugins.JacocoPluginExtension
@@ -49,6 +50,7 @@ class CodeProjectsPlugin implements Plugin<Project>
configureJar( project )
configureSupplementaryArchives( project )
+ configureArchivesBaseName( project )
configureJacoco( project )
configureCheckstyle( project )
@@ -94,6 +96,30 @@ class CodeProjectsPlugin implements Plugin<Project>
project.artifacts.add( 'archives', javadocJar )
}
+ private static void configureArchivesBaseName( Project project )
+ {
+ project.tasks.withType( AbstractArchiveTask ) { AbstractArchiveTask task ->
+ def toName = { List<String> path -> path.drop( 1 ).join( '.' ) }
+ def path = project.path.split( ':' ).drop( 1 ) as List<String>
+ if( path[ 0 ] == 'libraries' )
+ {
+ task.baseName = "org.apache.polygene.library.${ toName( path ) }"
+ }
+ else if( path[ 0 ].endsWith( 's' ) )
+ {
+ task.baseName = "org.apache.polygene.${ path[ 0 ].substring( 0, path[ 0 ].length() - 1 ) }.${ toName( path ) }"
+ }
+ else if( path.size() > 1 )
+ {
+ task.baseName = "org.apache.polygene.${ path[ 0 ] }.${ toName( path ) }"
+ }
+ else
+ {
+ task.baseName = "org.apache.polygene.${ path[ 0 ] }"
+ }
+ }
+ }
+
private static void configureJacoco( Project project )
{
def dependencies = project.rootProject.extensions.getByType( DependenciesDeclarationExtension )
http://git-wip-us.apache.org/repos/asf/zest-java/blob/05c8141f/buildSrc/src/main/groovy/org/apache/polygene/gradle/PolygeneExtension.groovy
----------------------------------------------------------------------
diff --git a/buildSrc/src/main/groovy/org/apache/polygene/gradle/PolygeneExtension.groovy b/buildSrc/src/main/groovy/org/apache/polygene/gradle/PolygeneExtension.groovy
index 41e472a..f20a610 100644
--- a/buildSrc/src/main/groovy/org/apache/polygene/gradle/PolygeneExtension.groovy
+++ b/buildSrc/src/main/groovy/org/apache/polygene/gradle/PolygeneExtension.groovy
@@ -54,22 +54,22 @@ class PolygeneExtension
private Dependency core( String name )
{
- return dependency( 'org.apache.polygene.core', "org.apache.polygene.core.$name" )
+ return dependency( 'core', name )
}
Dependency library( String name )
{
- return dependency( 'org.apache.polygene.libraries', "org.apache.polygene.library.$name" )
+ return dependency( 'libraries', name )
}
Dependency extension( String name )
{
- return dependency( 'org.apache.polygene.extensions', "org.apache.polygene.extension.$name" )
+ return dependency( 'extensions', name )
}
Dependency tool( String name )
{
- return dependency( 'org.apache.polygene.tools', "org.apache.polygene.tool.$name" )
+ return dependency( 'tools', name )
}
private Dependency dependency( String group, String name )
http://git-wip-us.apache.org/repos/asf/zest-java/blob/05c8141f/buildSrc/src/main/groovy/org/apache/polygene/gradle/RootProjectPlugin.groovy
----------------------------------------------------------------------
diff --git a/buildSrc/src/main/groovy/org/apache/polygene/gradle/RootProjectPlugin.groovy b/buildSrc/src/main/groovy/org/apache/polygene/gradle/RootProjectPlugin.groovy
index 78857ea..12f2601 100644
--- a/buildSrc/src/main/groovy/org/apache/polygene/gradle/RootProjectPlugin.groovy
+++ b/buildSrc/src/main/groovy/org/apache/polygene/gradle/RootProjectPlugin.groovy
@@ -95,7 +95,7 @@ class RootProjectPlugin implements Plugin<Project>
buildAll.dependsOn 'javadocs', 'check', 'jar',
project.subprojects.collect { p -> p.tasks.getByName( 'dependencyReport' ) },
project.subprojects.collect { p -> p.tasks.getByName( 'assemble' ) },
- ':org.apache.polygene.manual:website'
+ ':manual:website'
}
private static void applyPlugins( Project project )
http://git-wip-us.apache.org/repos/asf/zest-java/blob/05c8141f/settings.gradle
----------------------------------------------------------------------
diff --git a/settings.gradle b/settings.gradle
index a78cd93..d789e08 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -14,10 +14,10 @@
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- *
- *
*/
+rootProject.name = 'polygene-java'
+
include 'core:api',
'core:spi',
'core:testsupport',
@@ -98,31 +98,3 @@ include 'core:api',
'tutorials:services',
'tests:regression',
'tests:performance'
-
-rootProject.name = "org.apache.polygene"
-
-validateProject(rootProject, "")
-
-def validateProject(project, parentName)
-{
- assert project.projectDir.isDirectory()
- if( new File("$project.projectDir/src/main/java").exists() )
- {
- assert project.buildFile.isFile()
- }
- if( parentName == 'org.apache.polygene.libraries' )
- {
- parentName = 'org.apache.polygene.library'
- }
- if( parentName.endsWith('s') )
- {
- parentName = parentName.substring(0, parentName.length() - 1)
- }
- if( parentName.length() > 0 )
- {
- project.name = parentName + "." + project.name
- }
- project.children.each { child ->
- validateProject(child, project.name)
- }
-}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/05c8141f/tutorials/introduction/thirtyminutes/build.gradle
----------------------------------------------------------------------
diff --git a/tutorials/introduction/thirtyminutes/build.gradle b/tutorials/introduction/thirtyminutes/build.gradle
index d313fb6..dc0eeba 100644
--- a/tutorials/introduction/thirtyminutes/build.gradle
+++ b/tutorials/introduction/thirtyminutes/build.gradle
@@ -24,7 +24,7 @@ jar { manifest { name = "Apache Polygene\u2122 Tutorial - 30 minute Introduction" }
dependencies {
compile polygene.core.bootstrap
- compile project( ':org.apache.polygene.tutorials:org.apache.polygene.tutorial.introduction:org.apache.polygene.tutorial.introduction.tenminutes' )
+ compile project( ':tutorials:introduction:tenminutes' )
runtime polygene.core.runtime