Skip to content

Commit b4bba6e

Browse files
committed
cli: update and check annotation processor
1 parent be05f06 commit b4bba6e

File tree

7 files changed

+88
-86
lines changed

7 files changed

+88
-86
lines changed

modules/jooby-bom/pom.xml

Lines changed: 37 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -18,33 +18,24 @@
1818
<properties>
1919
<jooby.version>2.0.7-SNAPSHOT</jooby.version>
2020
<HikariCP.version>3.3.1</HikariCP.version>
21-
<apt-maven-plugin.version>1.1.3</apt-maven-plugin.version>
22-
<archetype-packaging.version>2.2</archetype-packaging.version>
21+
<archetype-packaging.version>3.1.2</archetype-packaging.version>
2322
<asm.version>7.2-beta</asm.version>
2423
<auto-service.version>1.0-rc6</auto-service.version>
25-
<build-helper-maven-plugin.version>1.9.1</build-helper-maven-plugin.version>
26-
<capsule-maven-plugin.version>1.0.4</capsule-maven-plugin.version>
2724
<checkstyle.version>8.19</checkstyle.version>
28-
<cobertura-maven-plugin.version>2.7</cobertura-maven-plugin.version>
2925
<commons-io.version>2.6</commons-io.version>
3026
<compile-testing.version>0.18</compile-testing.version>
3127
<config.version>1.3.4</config.version>
32-
<coveralls-maven-plugin.version>3.1.0</coveralls-maven-plugin.version>
33-
<depencency-check-maven.version>2.1.1</depencency-check-maven.version>
34-
<docker-maven-plugin.version>0.4.13</docker-maven-plugin.version>
35-
<dokka-maven-plugin.version>0.9.13</dokka-maven-plugin.version>
36-
<duplicate-finder-maven-plugin.version>1.2.1</duplicate-finder-maven-plugin.version>
3728
<exec-maven-plugin.version>1.6.0</exec-maven-plugin.version>
38-
<flyway.version>5.2.4</flyway.version>
29+
<flyway.version>6.0.1</flyway.version>
3930
<freemarker.version>2.3.29</freemarker.version>
4031
<gradle-core.version>2.6</gradle-core.version>
4132
<gradle-plugins.version>0.9-rc-1</gradle-plugins.version>
4233
<gradle-tooling-api.version>2.6</gradle-tooling-api.version>
43-
<guava.version>28.0-jre</guava.version>
34+
<guava.version>28.1-jre</guava.version>
4435
<guice.version>4.2.2</guice.version>
4536
<h2.version>1.4.199</h2.version>
4637
<handlebars.version>4.1.2</handlebars.version>
47-
<hibernate.version>5.4.3.Final</hibernate.version>
38+
<hibernate.version>5.4.4.Final</hibernate.version>
4839
<jackson-databind.version>2.9.9.2</jackson-databind.version>
4940
<jackson.version>2.9.9</jackson.version>
5041
<jacoco-maven-plugin.version>0.8.4</jacoco-maven-plugin.version>
@@ -60,53 +51,50 @@
6051
<jsr305.version>3.0.2</jsr305.version>
6152
<junit.version>5.5.1</junit.version>
6253
<kotlin.version>1.3.50</kotlin.version>
63-
<kotlinx-coroutines-core.version>1.2.2</kotlinx-coroutines-core.version>
54+
<kotlinx-coroutines-core.version>1.3.0</kotlinx-coroutines-core.version>
6455
<license-maven-plugin.version>3.0</license-maven-plugin.version>
6556
<log4j.version>2.12.1</log4j.version>
6657
<log4jdbc.version>1.2</log4jdbc.version>
6758
<logback-classic.version>1.2.3</logback-classic.version>
6859
<maven-antrun-plugin.version>1.8</maven-antrun-plugin.version>
69-
<maven-archetype-plugin.version>2.2</maven-archetype-plugin.version>
70-
<maven-assembly-plugin.version>3.1.0</maven-assembly-plugin.version>
71-
<maven-checkstyle-plugin.version>3.0.0</maven-checkstyle-plugin.version>
72-
<maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version>
60+
<maven-archetype-plugin.version>3.1.2</maven-archetype-plugin.version>
61+
<maven-assembly-plugin.version>3.1.1</maven-assembly-plugin.version>
62+
<maven-checkstyle-plugin.version>3.1.0</maven-checkstyle-plugin.version>
63+
<maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
7364
<maven-core.version>3.6.1</maven-core.version>
7465
<maven-deploy-plugin.version>2.8.2</maven-deploy-plugin.version>
75-
<maven-eclipse-plugin.version>2.9</maven-eclipse-plugin.version>
7666
<maven-enforcer-plugin.version>3.0.0-M1</maven-enforcer-plugin.version>
7767
<maven-gpg-plugin.version>1.6</maven-gpg-plugin.version>
78-
<maven-jar-plugin.version>2.5</maven-jar-plugin.version>
79-
<maven-java-formatter-plugin.version>0.4</maven-java-formatter-plugin.version>
80-
<maven-javadoc-plugin.version>2.10.4</maven-javadoc-plugin.version>
68+
<maven-jar-plugin.version>3.1.2</maven-jar-plugin.version>
69+
<maven-javadoc-plugin.version>3.1.1</maven-javadoc-plugin.version>
8170
<maven-plugin-annotations.version>3.6.0</maven-plugin-annotations.version>
8271
<maven-plugin-api.version>3.6.1</maven-plugin-api.version>
8372
<maven-plugin-plugin.version>3.6.0</maven-plugin-plugin.version>
8473
<maven-project.version>2.2.1</maven-project.version>
85-
<maven-release-plugin.version>2.5.1</maven-release-plugin.version>
8674
<maven-resources-plugin.version>3.1.0</maven-resources-plugin.version>
87-
<maven-shade-plugin.version>3.1.1</maven-shade-plugin.version>
88-
<maven-site-plugin.version>3.4</maven-site-plugin.version>
89-
<maven-source-plugin.version>2.4</maven-source-plugin.version>
75+
<maven-shade-plugin.version>3.2.1</maven-shade-plugin.version>
76+
<maven-site-plugin.version>3.8.2</maven-site-plugin.version>
77+
<maven-source-plugin.version>3.1.0</maven-source-plugin.version>
9078
<maven-surefire-plugin.version>3.0.0-M3</maven-surefire-plugin.version>
9179
<mockito.version>3.0.0</mockito.version>
9280
<mojo-executor.version>2.3.0</mojo-executor.version>
9381
<mysql-connector-java.version>8.0.17</mysql-connector-java.version>
9482
<netty.version>4.1.39.Final</netty.version>
95-
<nexus-staging-maven-plugin.version>1.6.5</nexus-staging-maven-plugin.version>
83+
<nexus-staging-maven-plugin.version>1.6.8</nexus-staging-maven-plugin.version>
9684
<okhttp.version>4.1.0</okhttp.version>
97-
<pebble.version>3.0.10</pebble.version>
85+
<pebble.version>3.1.0</pebble.version>
9886
<plexus-utils.version>3.2.1</plexus-utils.version>
9987
<reactor.version>3.2.11.RELEASE</reactor.version>
100-
<rest-assured.version>4.0.0</rest-assured.version>
88+
<rest-assured.version>4.1.0</rest-assured.version>
10189
<rocker.version>1.2.1</rocker.version>
102-
<rxjava.version>2.2.11</rxjava.version>
103-
<slf4j.version>1.7.27</slf4j.version>
90+
<rxjava.version>2.2.12</rxjava.version>
91+
<slf4j.version>1.7.28</slf4j.version>
10492
<spring.version>5.1.9.RELEASE</spring.version>
105-
<stork-maven-plugin.version>2.7.0</stork-maven-plugin.version>
93+
<stork-maven-plugin.version>3.0.0</stork-maven-plugin.version>
10694
<truth.version>1.0</truth.version>
10795
<unbescape.version>1.1.6.RELEASE</unbescape.version>
108-
<undertow.version>2.0.25.Final</undertow.version>
109-
<versions-maven-plugin.version>2.1</versions-maven-plugin.version>
96+
<undertow.version>2.0.26.Final</undertow.version>
97+
<versions-maven-plugin.version>2.7</versions-maven-plugin.version>
11098
<weld.version>3.1.2.Final</weld.version>
11199
</properties>
112100

@@ -207,6 +195,21 @@
207195
<artifactId>jooby-banner</artifactId>
208196
<version>${jooby.version}</version>
209197
</dependency>
198+
<dependency>
199+
<groupId>io.jooby</groupId>
200+
<artifactId>jooby-cli</artifactId>
201+
<version>${jooby.version}</version>
202+
</dependency>
203+
<dependency>
204+
<groupId>io.jooby</groupId>
205+
<artifactId>jooby-apt</artifactId>
206+
<version>${jooby.version}</version>
207+
</dependency>
208+
<dependency>
209+
<groupId>io.jooby</groupId>
210+
<artifactId>jooby-maven-plugin</artifactId>
211+
<version>${jooby-maven-plugin.version}</version>
212+
</dependency>
210213
<dependency>
211214
<groupId>io.jooby</groupId>
212215
<artifactId>jooby-gradle-plugin</artifactId>

modules/jooby-cli/pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@
111111
<plugin>
112112
<groupId>com.fizzed</groupId>
113113
<artifactId>stork-maven-plugin</artifactId>
114-
<version>3.0.0</version>
114+
<version>${stork-maven-plugin.version}</version>
115115
<executions>
116116
<execution>
117117
<id>stork-launcher</id>
@@ -123,7 +123,7 @@
123123
</plugin>
124124
<plugin>
125125
<artifactId>maven-assembly-plugin</artifactId>
126-
<version>3.1.1</version>
126+
<version>${maven-assembly-plugin.version}</version>
127127
<executions>
128128
<execution>
129129
<id>make-assembly</id>

modules/jooby-cli/src/main/resources/cli/IntegrationTest.java.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ public class IntegrationTest {
1717
static OkHttpClient client = new OkHttpClient();
1818

1919
@Test
20-
public void welcome(int serverPort) throws IOException {
20+
public void shouldSayHi(int serverPort) throws IOException {
2121
Request req = new Request.Builder()
2222
.url("http://localhost:" + serverPort)
2323
.build();

modules/jooby-cli/src/main/resources/cli/IntegrationTest.kt.hbs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,8 @@ import io.jooby.JoobyTest
44
import io.jooby.StatusCode
55
import okhttp3.OkHttpClient
66
import okhttp3.Request
7-
import okhttp3.Response
87
import org.junit.jupiter.api.Test
98

10-
import java.io.IOException
11-
129
import org.junit.jupiter.api.Assertions.assertEquals
1310

1411
@JoobyTest(App::class)
@@ -19,7 +16,7 @@ class IntegrationTest {
1916
}
2017

2118
@Test
22-
fun welcome(serverPort: Int) {
19+
fun shouldSayHi(serverPort: Int) {
2320
val req = Request.Builder()
2421
.url("http://localhost:$serverPort")
2522
.build()

modules/jooby-cli/src/main/resources/cli/pom.xml.hbs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@
101101
{{else}}
102102
<plugin>
103103
<artifactId>maven-compiler-plugin</artifactId>
104-
<version>3.6.2</version>
104+
<version>3.8.1</version>
105105
{{#if apt}}
106106
<configuration>
107107
<annotationProcessorPaths>
@@ -117,7 +117,7 @@
117117
{{/if}}
118118
<plugin>
119119
<artifactId>maven-surefire-plugin</artifactId>
120-
<version>2.22.2</version>
120+
<version>3.0.0-M3</version>
121121
</plugin>
122122
<!-- jooby:run -->
123123
<plugin>

modules/jooby-test/src/main/java/io/jooby/JoobyExtension.java

Lines changed: 31 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,10 @@
1616
import org.junit.jupiter.api.extension.ParameterResolver;
1717
import org.junit.jupiter.api.extension.TestInstancePostProcessor;
1818

19+
import javax.inject.Named;
1920
import java.lang.reflect.Field;
2021
import java.lang.reflect.Method;
22+
import java.lang.reflect.Modifier;
2123
import java.lang.reflect.Parameter;
2224
import java.util.Optional;
2325
import java.util.function.Supplier;
@@ -109,32 +111,40 @@ private ExtensionContext.Store getStore(ExtensionContext context) {
109111
private Supplier<Object> joobyParameter(ExtensionContext context,
110112
ParameterContext parameterContext) {
111113
Parameter parameter = parameterContext.getParameter();
112-
return injectionPoint(context, parameter.getType(), parameter.getName());
114+
return injectionPoint(context, parameter.getType(), () -> parameterName(parameter));
115+
}
116+
117+
private String parameterName(Parameter parameter) {
118+
if (!parameter.isNamePresent()) {
119+
throw new IllegalStateException("Parameter injection requires parameter names to be present "
120+
+ "at runtime. Make sure compiler has the -parameters option");
121+
}
122+
return parameter.getName();
113123
}
114124

115125
private Supplier<Object> injectionPoint(ExtensionContext context,
116-
Class type, String name) {
117-
if (name.equals("serverPath") && type == String.class) {
126+
Class type, Supplier<String> name) {
127+
if (Jooby.class.isAssignableFrom(type)) {
128+
return () -> application(context);
129+
}
130+
if (Environment.class.isAssignableFrom(type)) {
131+
return () -> application(context).getEnvironment();
132+
}
133+
if (Config.class.isAssignableFrom(type)) {
134+
return () -> application(context).getEnvironment().getConfig();
135+
}
136+
if (type == String.class && name.get().equals("serverPath")) {
118137
return () -> {
119138
Jooby app = application(context);
120139
return "http://localhost:" + app.getServerOptions().getPort() + app.getContextPath();
121140
};
122141
}
123-
if (name.equals("serverPort") && type == int.class) {
142+
if (type == int.class && name.get().equals("serverPort")) {
124143
return () -> {
125144
Jooby app = application(context);
126145
return app.getServerOptions().getPort();
127146
};
128147
}
129-
if (Jooby.class.isAssignableFrom(type)) {
130-
return () -> application(context);
131-
}
132-
if (Environment.class.isAssignableFrom(type)) {
133-
return () -> application(context).getEnvironment();
134-
}
135-
if (Config.class.isAssignableFrom(type)) {
136-
return () -> application(context).getEnvironment().getConfig();
137-
}
138148
return null;
139149
}
140150

@@ -157,10 +167,14 @@ private int port(int port, int fallback) {
157167

158168
@Override public void postProcessTestInstance(Object instance, ExtensionContext context)
159169
throws Exception {
160-
for (Field field : instance.getClass().getFields()) {
161-
Supplier<Object> injectionPoint = injectionPoint(context, field.getType(), field.getName());
162-
if (injectionPoint != null) {
163-
field.set(instance, injectionPoint.get());
170+
for (Field field : instance.getClass().getDeclaredFields()) {
171+
if (!Modifier.isStatic(field.getModifiers())) {
172+
Supplier<Object> injectionPoint = injectionPoint(context, field.getType(),
173+
() -> field.getName());
174+
if (injectionPoint != null) {
175+
field.setAccessible(true);
176+
field.set(instance, injectionPoint.get());
177+
}
164178
}
165179
}
166180
}

pom.xml

Lines changed: 14 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -96,47 +96,35 @@
9696
<gradle-tooling-api.version>2.6</gradle-tooling-api.version>
9797

9898
<!-- Maven plugins -->
99-
<apt-maven-plugin.version>1.1.3</apt-maven-plugin.version>
100-
<archetype-packaging.version>2.2</archetype-packaging.version>
101-
<build-helper-maven-plugin.version>1.9.1</build-helper-maven-plugin.version>
102-
<capsule-maven-plugin.version>1.0.4</capsule-maven-plugin.version>
103-
<cobertura-maven-plugin.version>2.7</cobertura-maven-plugin.version>
104-
<coveralls-maven-plugin.version>3.1.0</coveralls-maven-plugin.version>
105-
<depencency-check-maven.version>2.1.1</depencency-check-maven.version>
106-
<docker-maven-plugin.version>0.4.13</docker-maven-plugin.version>
107-
<dokka-maven-plugin.version>0.9.13</dokka-maven-plugin.version>
108-
<duplicate-finder-maven-plugin.version>1.2.1</duplicate-finder-maven-plugin.version>
109-
<exec-maven-plugin.version>1.6.0</exec-maven-plugin.version>
11099
<jacoco-maven-plugin.version>${jacoco.version}</jacoco-maven-plugin.version>
111100
<license-maven-plugin.version>3.0</license-maven-plugin.version>
112101
<maven-antrun-plugin.version>1.8</maven-antrun-plugin.version>
113-
<maven-archetype-plugin.version>2.2</maven-archetype-plugin.version>
114-
<maven-assembly-plugin.version>3.1.0</maven-assembly-plugin.version>
115-
<maven-checkstyle-plugin.version>3.0.0</maven-checkstyle-plugin.version>
116-
<maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version>
102+
<maven-archetype-plugin.version>3.1.2</maven-archetype-plugin.version>
103+
<maven-assembly-plugin.version>3.1.1</maven-assembly-plugin.version>
104+
<maven-checkstyle-plugin.version>3.1.0</maven-checkstyle-plugin.version>
105+
<maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
117106
<maven-core.version>3.6.1</maven-core.version>
118107
<maven-deploy-plugin.version>2.8.2</maven-deploy-plugin.version>
119-
<maven-eclipse-plugin.version>2.9</maven-eclipse-plugin.version>
120108
<maven-enforcer-plugin.version>3.0.0-M1</maven-enforcer-plugin.version>
121109
<maven-gpg-plugin.version>1.6</maven-gpg-plugin.version>
122-
<maven-jar-plugin.version>2.5</maven-jar-plugin.version>
123-
<maven-java-formatter-plugin.version>0.4</maven-java-formatter-plugin.version>
124-
<maven-javadoc-plugin.version>2.10.4</maven-javadoc-plugin.version>
110+
<maven-jar-plugin.version>3.1.2</maven-jar-plugin.version>
111+
<maven-javadoc-plugin.version>3.1.1</maven-javadoc-plugin.version>
112+
<archetype-packaging.version>3.1.2</archetype-packaging.version>
125113
<maven-plugin-annotations.version>3.6.0</maven-plugin-annotations.version>
126114
<maven-plugin-api.version>3.6.1</maven-plugin-api.version>
127115
<maven-plugin-plugin.version>3.6.0</maven-plugin-plugin.version>
128116
<maven-project.version>2.2.1</maven-project.version>
129-
<maven-release-plugin.version>2.5.1</maven-release-plugin.version>
130117
<maven-resources-plugin.version>3.1.0</maven-resources-plugin.version>
131-
<maven-shade-plugin.version>3.1.1</maven-shade-plugin.version>
132-
<maven-site-plugin.version>3.4</maven-site-plugin.version>
133-
<maven-source-plugin.version>2.4</maven-source-plugin.version>
118+
<maven-shade-plugin.version>3.2.1</maven-shade-plugin.version>
119+
<maven-site-plugin.version>3.8.2</maven-site-plugin.version>
120+
<maven-source-plugin.version>3.1.0</maven-source-plugin.version>
134121
<maven-surefire-plugin.version>3.0.0-M3</maven-surefire-plugin.version>
135122
<mojo-executor.version>2.3.0</mojo-executor.version>
136-
<nexus-staging-maven-plugin.version>1.6.5</nexus-staging-maven-plugin.version>
123+
<nexus-staging-maven-plugin.version>1.6.8</nexus-staging-maven-plugin.version>
137124
<plexus-utils.version>3.2.1</plexus-utils.version>
138-
<stork-maven-plugin.version>2.7.0</stork-maven-plugin.version>
139-
<versions-maven-plugin.version>2.1</versions-maven-plugin.version>
125+
<stork-maven-plugin.version>3.0.0</stork-maven-plugin.version>
126+
<versions-maven-plugin.version>2.7</versions-maven-plugin.version>
127+
<exec-maven-plugin.version>1.6.0</exec-maven-plugin.version>
140128

141129
<!-- Jooby -->
142130
<jooby.version>${project.version}</jooby.version>

0 commit comments

Comments
 (0)