diff --git a/build/release.sh b/build/release.sh
index 339fbeae0c..384fedec3f 100755
--- a/build/release.sh
+++ b/build/release.sh
@@ -6,6 +6,6 @@ mvn -Dalpn-boot-version=$ALPN_VERSION -pl '!modules/coverage-report' clean deplo
cd modules/jooby-bom
-groovy bom.groovy ../../pom.xml > pom.xml
+groovy bom.groovy > pom.xml
mvn -Dalpn-boot-version=$ALPN_VERSION clean deploy -P sonatype-oss-release
diff --git a/modules/jooby-bom/bom.groovy b/modules/jooby-bom/bom.groovy
index 9bb1bf94a5..80f7ab3680 100644
--- a/modules/jooby-bom/bom.groovy
+++ b/modules/jooby-bom/bom.groovy
@@ -2,13 +2,16 @@
// usage: groovy bom.groovy ../pom.xml > pom.xml
import groovy.xml.*
-def xml = new XmlSlurper().parse(new File(args[0]));
+def jooby = new XmlSlurper().parse(new File("../../pom.xml"));
+def modules = new XmlSlurper().parse(new File("../pom.xml"));
def sw = new StringWriter()
-def b = new MarkupBuilder(sw)
+def props = new StringWriter()
+def deps = new MarkupBuilder(sw)
+def bprops = new MarkupBuilder(props)
def template = new java.io.File("pom.template.xml").getText("UTF-8")
-b.dependencies {
- for (m in xml.modules.module) {
+deps.dependencies {
+ for (m in modules.modules.module) {
if (m.text().endsWith('-bom') || m.text().contains('coverage-report')) continue;
dependency {
groupId('${project.groupId}');
@@ -18,4 +21,13 @@ b.dependencies {
}
}
-println template.replace("@version", xml.version.text()).replace("@dependencies", sw.toString())
+bprops.properties {
+ "jooby.version"(jooby.version.text())
+ jooby.properties.each {properties ->
+ properties.children().each {property ->
+ "${property.name()}"("${property.text()}")
+ }
+ }
+}
+
+println template.replace("@version", jooby.version.text()).replace("@dependencies", sw.toString()).replace("@properties", props.toString())
diff --git a/modules/jooby-bom/pom.template.xml b/modules/jooby-bom/pom.template.xml
index 37d4c3b40a..57bd07aaff 100644
--- a/modules/jooby-bom/pom.template.xml
+++ b/modules/jooby-bom/pom.template.xml
@@ -9,20 +9,7 @@
jooby-bom
Jooby (Bill of Materials)
https://github.com/jooby-project/jooby
-
- @version
-
- 2.5.1
- 2.4
- 2.7
- 2.10.1
- 1.5
- 1.3.1
- 2.17
- 2.9
- 0.4
- 1.6.5
-
+ @properties
The Apache Software License, Version 2.0
diff --git a/modules/jooby-bom/pom.xml b/modules/jooby-bom/pom.xml
index 059545151d..6f47d9fd31 100644
--- a/modules/jooby-bom/pom.xml
+++ b/modules/jooby-bom/pom.xml
@@ -4,25 +4,164 @@
4.0.0
org.jooby
jooby-bom
- 1.1.3
+ 1.2.0-SNAPSHOT
pom
jooby-bom
Jooby (Bill of Materials)
https://github.com/jooby-project/jooby
- 1.1.3
-
- 2.5.1
- 2.4
- 2.7
- 2.10.1
- 1.5
- 1.3.1
- 2.17
- 2.9
- 0.4
- 1.6.5
-
+ 1.2.0-SNAPSHOT
+ 0.1.0
+ 2.8.3
+ 1.4.15.Final
+ 3.1.0
+ 9.4.3.v20170317
+ 4.1.14.Final
+ 1.1.33.Fork26
+ 3.20.0-GA
+ 2.0
+ 1.7.25
+ 1.2.3
+ 2.3.3
+ 21.0
+ 4.1.0
+ 1.3.1
+ 4.0.5
+ 1.4.190
+ 5.1.42
+ 0.7.1
+ 2.6.1
+ 5.2.1.Final
+ 4.3.9.Final
+ 3.0.0
+ 4.5.2
+ 3.0.1
+ 1.9.36
+ 3.2.0
+ 5.0.3
+ 2.2.2
+ 2.78
+ 3.0.0-beta2
+ 2.3.26-incubating
+ 2.18.3
+ 2.9.0
+ 3.2.2
+ 3.2.2
+ ${mongo-java-driver.version}
+ 1.1.1
+ 1.4.5.Final
+ 5.0.0
+ 5.1.3.Final
+ 2.2.5
+ 2.2.6
+ 2.6.2
+ 2.10.0
+ 1.9.5
+ 1.5.16
+ 3.1.6
+ 3.0.0
+ 3.0.17
+ 3.4
+ 1.15
+ 2.12.0
+ 1.11.43
+ 1.4
+ 1.2
+ 2.5.0
+ 4.0
+ 3.6.1
+ 1.13.0
+ 10.1.7
+ 2.1.2
+ 10.1.7
+ 10.1.7
+ 2.4.11
+ 2.4.8
+ v20150901
+ 9.0.1.0
+ 4.6.0
+ 3.1.2
+ 2.2.1
+ 1.1.4
+ 1.8.3
+ 1.1.5
+ 1.1.0
+ 1.0.0
+ 0.7
+ 2.5.0.M3
+ 1.3.1
+ 0.14.0
+ 2.4.7
+ 3.0.2.RELEASE
+ 0.16.0
+ 1.1.2-5
+ 1.2.0
+ 3.2.1.51
+ 3.2.1.51.4
+ 3.2.1
+ 3.7.0
+ **
+ debug=0
+ 3.7.3
+ 4.0.9
+ 2.0.4
+ 2.1
+ 0.0.7
+ 2.3.1
+ 3.2.0
+ 1.2.0
+ 2.0.7
+ 1.9
+ 1.8
+ 1.1.1
+ 1.1.3.RELEASE
+ 4.12
+ 3.2
+ 1.6.4
+ 0.7.8
+ UTF-8
+ 1.8
+ yyyy-MM-dd HH:mm:ssa
+ ${maven.build.timestamp}
+ 3.5.1
+ 2.5.1
+ 2.4
+ 2.7
+ 2.10.1
+ 1.5
+ 1.3.1
+ 2.19.1
+ 2.9
+ 0.4
+ 1.6.5
+ 2.5
+ 2.3
+ 2.7
+ 3.1.0
+ 1.3.2
+ 3.3.3
+ 2.2.1
+ 3.3.3
+ 3.4
+ 3.0.20
+ 2.2.0
+ 1.8
+ 3.4
+ 3.0
+ ${jacoco.version}
+ 2.5.3
+ 2.1
+ 2.8.2
+ 2.15
+ 1.1.3
+ 1.9.1
+ 1.2.3
+ 1.0.4
+ 0.4.13
+ 2.1.1
+ ${project.version}
+ ${jooby.version}
+
The Apache Software License, Version 2.0
@@ -52,12 +191,452 @@
${project.groupId}
- jooby
+ jooby-apitool
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-spec
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-executor
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-jackson
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-gson
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-hbs
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-ftl
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-pebble
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-jade
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-caffeine
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-guava-cache
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-jdbc
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-jooq
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-hbm
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-hbm4
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-dist
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-undertow
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-servlet
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-jetty
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-netty
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-neo4j
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-quartz
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-jdbi
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-jdbi3
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-run
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-jedis
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-mongodb
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-mongodb-rx
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-morphia
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-camel
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-elasticsearch
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-hbv
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-archetype
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-maven-plugin
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-ehcache
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-pac4j
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-swagger
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-raml
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-spymemcached
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-aws
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-commons-email
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-consul
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-jongo
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-flyway
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-hazelcast
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-ebean
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-akka
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-metrics
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-querydsl
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-sitemap
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-rxjava
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-rxjava-jdbc
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-banner
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-reactor
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-whoops
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-gradle-plugin
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-couchbase
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-cassandra
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-scanner
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-csl
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-unbescape
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-crash
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-thymeleaf
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-filewatcher
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-lang-kotlin
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-requery
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-rocker
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-livereload
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-frontend
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-j2v8
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-nodejs
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-jshint
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-jscs
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-less
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-less4j
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-csslint
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-ng-annotate
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-uglify
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-clean-css
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-yui-compressor
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-closure-compiler
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-sass
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-requirejs
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-babel
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-rollup
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-svg-sprites
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-svg-symbol
+ ${jooby.version}
+
+
+ ${project.groupId}
+ jooby-assets-autoprefixer
${jooby.version}
${project.groupId}
- modules
+ jooby-assets-react
${jooby.version}
diff --git a/modules/jooby-gradle-plugin/src/main/java/org/jooby/run/JoobyPlugin.java b/modules/jooby-gradle-plugin/src/main/java/org/jooby/run/JoobyPlugin.java
index aa7d9d20e6..884ccdf528 100644
--- a/modules/jooby-gradle-plugin/src/main/java/org/jooby/run/JoobyPlugin.java
+++ b/modules/jooby-gradle-plugin/src/main/java/org/jooby/run/JoobyPlugin.java
@@ -211,6 +211,7 @@
import java.io.File;
import java.io.IOException;
+import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
@@ -250,7 +251,7 @@ private void configureJoobyRun(final Project project) throws IOException {
mapping.map("mainClassName", () -> project.getProperties().get("mainClassName"));
- mapping.map("srcExtensions", () -> new String[] {".java", ".conf", ".properties"});
+ mapping.map("srcExtensions", () -> Arrays.asList(".java", ".conf", ".properties"));
mapping.map("compiler", () -> {
File eclipseClasspath = new File(project.getProjectDir(), ".classpath");
diff --git a/modules/jooby-gradle-plugin/src/main/java/org/jooby/run/JoobyTask.java b/modules/jooby-gradle-plugin/src/main/java/org/jooby/run/JoobyTask.java
index 29380f22c2..52ca45fc3f 100644
--- a/modules/jooby-gradle-plugin/src/main/java/org/jooby/run/JoobyTask.java
+++ b/modules/jooby-gradle-plugin/src/main/java/org/jooby/run/JoobyTask.java
@@ -281,6 +281,7 @@ public void run() throws Exception {
getLogger().info("compiler is {}", compiler);
if ("on".equalsIgnoreCase(compiler)) {
Path[] watchDirs = getSrc().stream()
+ .filter(File::exists)
.map(File::toPath)
.collect(Collectors.toList())
.toArray(new Path[0]);
diff --git a/modules/jooby-netty/pom.xml b/modules/jooby-netty/pom.xml
index 2c369ad2c1..563a71834d 100644
--- a/modules/jooby-netty/pom.xml
+++ b/modules/jooby-netty/pom.xml
@@ -13,10 +13,6 @@
netty module
-
- 1.1.33.Fork26
-
-
diff --git a/pom.xml b/pom.xml
index 19ad9d4dd6..bbe26576a9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -2991,6 +2991,7 @@ org.eclipse.jdt.apt.processorOptions/defaultOverwrite=true
3.1.0
9.4.3.v20170317
4.1.14.Final
+ 1.1.33.Fork26
3.20.0-GA
2.0
1.7.25