diff --git a/Jenkinsfile b/Jenkinsfile index a851451b050..4dafabe0f0b 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -12,8 +12,7 @@ pipeline { steps { container('jetty-build') { timeout( time: 240, unit: 'MINUTES' ) { - mavenBuild( "jdk8", "clean install", "maven3", - [[parserName: 'Maven'], [parserName: 'Java']]) + mavenBuild( "jdk8", "clean install", "maven3") // Collect up the jacoco execution results (only on main build) jacoco inclusionPattern: '**/org/eclipse/jetty/**/*.class', exclusionPattern: '' + @@ -32,6 +31,7 @@ pipeline { execPattern: '**/target/jacoco.exec', classPattern: '**/target/classes', sourcePattern: '**/src/main/java' + recordIssues id: "jdk8", name: "Static Analysis jdk8", aggregatingResults: true, enabledForFailure: true, tools: [mavenConsole(), java(), checkStyle(), spotBugs(), pmdParser()] } } } @@ -42,8 +42,8 @@ pipeline { steps { container( 'jetty-build' ) { timeout( time: 240, unit: 'MINUTES' ) { - mavenBuild( "jdk11", "clean install -Djacoco.skip=true", "maven3", - [[parserName: 'Maven'], [parserName: 'Java']]) + mavenBuild( "jdk11", "clean install -Djacoco.skip=true -Perrorprone", "maven3") + recordIssues id: "jdk11", name: "Static Analysis jdk11", aggregatingResults: true, enabledForFailure: true, tools: [mavenConsole(), java(), checkStyle(), spotBugs(), pmdParser(), errorProne()] } } } @@ -54,8 +54,8 @@ pipeline { steps { container( 'jetty-build' ) { timeout( time: 240, unit: 'MINUTES' ) { - mavenBuild( "jdk15", "clean install -Djacoco.skip=true", "maven3", - [[parserName: 'Maven'], [parserName: 'Java']]) + mavenBuild( "jdk15", "clean install -Djacoco.skip=true", "maven3") + recordIssues id: "jdk15", name: "Static Analysis jdk15", aggregatingResults: true, enabledForFailure: true, tools: [mavenConsole(), java(), checkStyle(), spotBugs(), pmdParser()] } } } @@ -65,10 +65,11 @@ pipeline { agent { node { label 'linux' } } steps { container( 'jetty-build' ) { - timeout( time: 60, unit: 'MINUTES' ) { + timeout( time: 120, unit: 'MINUTES' ) { mavenBuild( "jdk11", "install javadoc:javadoc javadoc:aggregate-jar -DskipTests -Dpmd.skip=true -Dcheckstyle.skip=true", - "maven3", [[parserName: 'Maven'], [parserName: 'JavaDoc'], [parserName: 'Java']]) + "maven3") + recordIssues id: "javadoc", enabledForFailure: true, tools: [javaDoc()] } } } @@ -78,9 +79,8 @@ pipeline { agent { node { label 'linux' } } steps { container( 'jetty-build' ) { - timeout( time: 60, unit: 'MINUTES' ) { - mavenBuild( "jdk8", "-Pcompact3 clean install -DskipTests", "maven3", - [[parserName: 'Maven'], [parserName: 'Java']]) + timeout( time: 120, unit: 'MINUTES' ) { + mavenBuild( "jdk8", "-Pcompact3 clean install -DskipTests", "maven3") } } } @@ -130,7 +130,7 @@ def slackNotif() { * @param cmdline the command line in " "`format. * @param consoleParsers array of console parsers to run */ -def mavenBuild(jdk, cmdline, mvnName, consoleParsers) { +def mavenBuild(jdk, cmdline, mvnName) { script { try { withEnv(["JAVA_HOME=${ tool "$jdk" }", @@ -138,16 +138,13 @@ def mavenBuild(jdk, cmdline, mvnName, consoleParsers) { "MAVEN_OPTS=-Xms2g -Xmx4g -Djava.awt.headless=true"]) { configFileProvider( [configFile(fileId: 'oss-settings.xml', variable: 'GLOBAL_MVN_SETTINGS')]) { - sh "mvn -s $GLOBAL_MVN_SETTINGS -Dmaven.repo.local=.repository -Pci -V -B -e -Djetty.testtracker.log=true $cmdline -Dunix.socket.tmp=/tmp/unixsocket" + sh "mvn --no-transfer-progress -s $GLOBAL_MVN_SETTINGS -Dmaven.repo.local=.repository -Pci -V -B -e -Djetty.testtracker.log=true $cmdline -Dunix.socket.tmp=/tmp/unixsocket" } } } finally { junit testResults: '**/target/surefire-reports/*.xml,**/target/invoker-reports/TEST*.xml', allowEmptyResults: true - if(consoleParsers!=null){ - warnings consoleParsers: consoleParsers - } } } } diff --git a/examples/pom.xml b/examples/pom.xml index 397c42046aa..72485e3554f 100644 --- a/examples/pom.xml +++ b/examples/pom.xml @@ -14,6 +14,7 @@ true + true @@ -26,14 +27,6 @@ true - - org.codehaus.mojo - findbugs-maven-plugin - - - true - - diff --git a/jetty-alpn/jetty-alpn-client/pom.xml b/jetty-alpn/jetty-alpn-client/pom.xml index 8499a6f8d49..349d9ebfd14 100644 --- a/jetty-alpn/jetty-alpn-client/pom.xml +++ b/jetty-alpn/jetty-alpn-client/pom.xml @@ -9,6 +9,7 @@ Jetty :: ALPN :: Client ${project.groupId}.alpn.client + org.eclipse.alpn.* @@ -36,13 +37,6 @@ org.apache.maven.plugins maven-source-plugin - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.alpn.* - - diff --git a/jetty-alpn/jetty-alpn-server/pom.xml b/jetty-alpn/jetty-alpn-server/pom.xml index 32520d98f27..c4df1168442 100644 --- a/jetty-alpn/jetty-alpn-server/pom.xml +++ b/jetty-alpn/jetty-alpn-server/pom.xml @@ -9,6 +9,7 @@ Jetty :: ALPN :: Server ${project.groupId}.alpn.server + org.eclipse.alpn.* @@ -18,13 +19,6 @@ org.apache.maven.plugins maven-source-plugin - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.alpn.* - - org.codehaus.mojo build-helper-maven-plugin diff --git a/jetty-annotations/pom.xml b/jetty-annotations/pom.xml index 3b82be745da..c5b2a700037 100644 --- a/jetty-annotations/pom.xml +++ b/jetty-annotations/pom.xml @@ -10,6 +10,7 @@ Annotation support for deploying servlets in jetty. ${project.groupId}.annotations + org.eclipse.annotations.* @@ -24,13 +25,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.annotations.* - - diff --git a/jetty-client/pom.xml b/jetty-client/pom.xml index 73333e0cd5c..d49059af04c 100644 --- a/jetty-client/pom.xml +++ b/jetty-client/pom.xml @@ -11,16 +11,10 @@ ${project.groupId}.client target/test-policy + org.eclipse.client.* - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.client.* - - org.apache.maven.plugins maven-dependency-plugin diff --git a/jetty-continuation/pom.xml b/jetty-continuation/pom.xml index a35abef1a97..fb487b5c40a 100644 --- a/jetty-continuation/pom.xml +++ b/jetty-continuation/pom.xml @@ -10,16 +10,10 @@ Asynchronous API ${project.groupId}.continuation + org.eclipse.continuation.* - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.continuation.* - - diff --git a/jetty-deploy/pom.xml b/jetty-deploy/pom.xml index a3196cd9385..90076318a3c 100644 --- a/jetty-deploy/pom.xml +++ b/jetty-deploy/pom.xml @@ -10,18 +10,8 @@ Jetty deployers ${project.groupId}.deploy + org.eclipse.deploy.* - - - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.deploy.* - - - - org.eclipse.jetty.toolchain diff --git a/jetty-distribution/pom.xml b/jetty-distribution/pom.xml index 823d205310d..b44a4f89b08 100644 --- a/jetty-distribution/pom.xml +++ b/jetty-distribution/pom.xml @@ -12,6 +12,7 @@ ${basedir}/target/distribution ${basedir}/target/home + true @@ -384,14 +385,6 @@ true - - - org.codehaus.mojo - findbugs-maven-plugin - - true - - diff --git a/jetty-home/pom.xml b/jetty-home/pom.xml index 0b2e6ad23e7..0c20aa89f41 100644 --- a/jetty-home/pom.xml +++ b/jetty-home/pom.xml @@ -14,6 +14,7 @@ ${basedir}/target/jetty-home ${basedir}/target/jetty-home-sources 1.0.4 + true @@ -538,14 +539,6 @@ true - - - org.codehaus.mojo - findbugs-maven-plugin - - true - - diff --git a/jetty-http-spi/pom.xml b/jetty-http-spi/pom.xml index c3e4b561f73..1ec07091ad4 100644 --- a/jetty-http-spi/pom.xml +++ b/jetty-http-spi/pom.xml @@ -9,6 +9,7 @@ Jetty :: Http Service Provider Interface ${project.groupId}.http.spi + org.eclipse.jetty.http.spi.* @@ -37,13 +38,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.http.spi.* - - org.apache.maven.plugins maven-surefire-plugin diff --git a/jetty-http/pom.xml b/jetty-http/pom.xml index 9fb99870c55..0da02ae4b0e 100644 --- a/jetty-http/pom.xml +++ b/jetty-http/pom.xml @@ -10,6 +10,7 @@ Jetty :: Http Utility ${project.groupId}.http + org.eclipse.jetty.http.* @@ -58,13 +59,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.http.* - - org.apache.maven.plugins maven-shade-plugin diff --git a/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2Client.java b/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2Client.java index 351b1b2d9c2..dc321136331 100644 --- a/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2Client.java +++ b/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2Client.java @@ -134,6 +134,8 @@ public class HTTP2Client extends ContainerLifeCycle private int maxFrameLength = Frame.DEFAULT_MAX_LENGTH; private int maxConcurrentPushedStreams = 32; private int maxSettingsKeys = SettingsFrame.DEFAULT_MAX_KEYS; + private int maxDynamicTableSize = 4096; + private int maxHeaderBlockFragment = 0; private FlowControlStrategy.Factory flowControlStrategyFactory = () -> new BufferingFlowControlStrategy(0.5F); @Override @@ -372,6 +374,28 @@ public class HTTP2Client extends ContainerLifeCycle this.maxSettingsKeys = maxSettingsKeys; } + @ManagedAttribute("The HPACK dynamic table maximum size") + public int getMaxDynamicTableSize() + { + return maxDynamicTableSize; + } + + public void setMaxDynamicTableSize(int maxDynamicTableSize) + { + this.maxDynamicTableSize = maxDynamicTableSize; + } + + @ManagedAttribute("The max size of header block fragments") + public int getMaxHeaderBlockFragment() + { + return maxHeaderBlockFragment; + } + + public void setMaxHeaderBlockFragment(int maxHeaderBlockFragment) + { + this.maxHeaderBlockFragment = maxHeaderBlockFragment; + } + public void connect(InetSocketAddress address, Session.Listener listener, Promise promise) { connect(null, address, listener, promise); diff --git a/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientConnectionFactory.java b/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientConnectionFactory.java index 8c3e2e99fdd..5d73d33de30 100644 --- a/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientConnectionFactory.java +++ b/jetty-http2/http2-client/src/main/java/org/eclipse/jetty/http2/client/HTTP2ClientConnectionFactory.java @@ -63,7 +63,7 @@ public class HTTP2ClientConnectionFactory implements ClientConnectionFactory @SuppressWarnings("unchecked") Promise promise = (Promise)context.get(SESSION_PROMISE_CONTEXT_KEY); - Generator generator = new Generator(byteBufferPool); + Generator generator = new Generator(byteBufferPool, client.getMaxDynamicTableSize(), client.getMaxHeaderBlockFragment()); FlowControlStrategy flowControl = client.getFlowControlStrategyFactory().newFlowControlStrategy(); HTTP2ClientSession session = new HTTP2ClientSession(scheduler, endPoint, generator, listener, flowControl); session.setMaxRemoteStreams(client.getMaxConcurrentPushedStreams()); diff --git a/jetty-io/pom.xml b/jetty-io/pom.xml index 6777993f8f6..227d6d9e9ee 100644 --- a/jetty-io/pom.xml +++ b/jetty-io/pom.xml @@ -10,6 +10,7 @@ Jetty :: IO Utility ${project.groupId}.io + org.eclipse.jetty.io.* @@ -23,15 +24,4 @@ test - - - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.io.* - - - - diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java index a78644ae972..5d78be85fb9 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ByteBufferPool.java @@ -24,6 +24,7 @@ import java.util.Deque; import java.util.List; import java.util.concurrent.ConcurrentLinkedDeque; import java.util.concurrent.atomic.AtomicInteger; +import java.util.concurrent.atomic.AtomicLong; import java.util.function.Consumer; import org.eclipse.jetty.util.BufferUtil; @@ -158,7 +159,7 @@ public interface ByteBufferPool private final int _capacity; private final int _maxSize; private final AtomicInteger _size; - private long _lastUpdate = System.nanoTime(); + private final AtomicLong _lastUpdate = new AtomicLong(System.nanoTime()); public Bucket(ByteBufferPool pool, int capacity, int maxSize) { @@ -196,7 +197,7 @@ public interface ByteBufferPool public void release(ByteBuffer buffer) { - _lastUpdate = System.nanoTime(); + _lastUpdate.lazySet(System.nanoTime()); BufferUtil.clear(buffer); if (_size == null) queueOffer(buffer); @@ -251,7 +252,7 @@ public interface ByteBufferPool long getLastUpdate() { - return _lastUpdate; + return _lastUpdate.get(); } @Override diff --git a/jetty-jaas/pom.xml b/jetty-jaas/pom.xml index 83c9d55a534..1e0473912ba 100644 --- a/jetty-jaas/pom.xml +++ b/jetty-jaas/pom.xml @@ -12,6 +12,7 @@ ${project.groupId}.jaas 2.0.0-M24 + org.eclipse.jetty.jaas.* @@ -21,13 +22,6 @@ org.apache.maven.plugins maven-source-plugin - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.jaas.* - - diff --git a/jetty-jaspi/pom.xml b/jetty-jaspi/pom.xml index 8cd5c9585e6..813212fe3df 100644 --- a/jetty-jaspi/pom.xml +++ b/jetty-jaspi/pom.xml @@ -12,17 +12,11 @@ ${project.groupId}.security.jaspi + org.eclipse.jetty.jaspi.* - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.jaspi.* - - org.apache.felix maven-bundle-plugin diff --git a/jetty-jmh/pom.xml b/jetty-jmh/pom.xml index 0bd16e95e21..6aefdb384eb 100644 --- a/jetty-jmh/pom.xml +++ b/jetty-jmh/pom.xml @@ -12,17 +12,11 @@ ${project.groupId}.jmh + true - - org.codehaus.mojo - findbugs-maven-plugin - - true - - org.apache.felix maven-bundle-plugin diff --git a/jetty-jmx/pom.xml b/jetty-jmx/pom.xml index 051845d6219..09cb594b346 100644 --- a/jetty-jmx/pom.xml +++ b/jetty-jmx/pom.xml @@ -10,18 +10,8 @@ JMX management artifact for jetty. ${project.groupId}.jmx + org.eclipse.jetty.jmx.* - - - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.jmx.* - - - - org.eclipse.jetty.toolchain diff --git a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ConnectorServer.java b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ConnectorServer.java index 58784850e59..0d8151271e0 100644 --- a/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ConnectorServer.java +++ b/jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ConnectorServer.java @@ -42,6 +42,7 @@ import javax.management.remote.rmi.RMIConnectorServer; import javax.rmi.ssl.SslRMIClientSocketFactory; import org.eclipse.jetty.util.HostPort; +import org.eclipse.jetty.util.IO; import org.eclipse.jetty.util.component.AbstractLifeCycle; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; @@ -243,7 +244,15 @@ public class ConnectorServer extends AbstractLifeCycle if (_sslContextFactory == null) { ServerSocket server = new ServerSocket(); - server.bind(new InetSocketAddress(address, port)); + try + { + server.bind(new InetSocketAddress(address, port)); + } + catch (Throwable e) + { + IO.close(server); + throw e; + } return server; } else diff --git a/jetty-jndi/pom.xml b/jetty-jndi/pom.xml index 4fb28c1be65..858332df792 100644 --- a/jetty-jndi/pom.xml +++ b/jetty-jndi/pom.xml @@ -10,6 +10,7 @@ JNDI spi impl for java namespace. ${project.groupId}.jndi + org.eclipse.jetty.jndi.* @@ -40,13 +41,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.jndi.* - - diff --git a/jetty-openid/pom.xml b/jetty-openid/pom.xml index 3477a55b2d6..02b239bd7dc 100644 --- a/jetty-openid/pom.xml +++ b/jetty-openid/pom.xml @@ -12,17 +12,11 @@ ${project.groupId}.openid + org.eclipse.jetty.security.openid.* - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.security.openid.* - - org.apache.felix maven-bundle-plugin diff --git a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml index f37b815c26d..e024930a94f 100644 --- a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml @@ -10,6 +10,7 @@ Jetty OSGi Boot JSP bundle ${project.groupId}.boot.jsp + org.eclipse.jetty.osgi.boot.jasper.*,org.eclipse.jetty.osgi.boot.jsp.* @@ -125,13 +126,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.osgi.boot.jasper.*,org.eclipse.jetty.osgi.boot.jsp.* - - diff --git a/jetty-osgi/jetty-osgi-boot-warurl/pom.xml b/jetty-osgi/jetty-osgi-boot-warurl/pom.xml index 34ac1ada51a..93172e657d8 100644 --- a/jetty-osgi/jetty-osgi-boot-warurl/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-warurl/pom.xml @@ -11,6 +11,7 @@ Jetty OSGi Boot-Warurl bundle ${project.groupId}.boot.warurl + org.eclipse.jetty.osgi.boot.warurl.* @@ -36,13 +37,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.osgi.boot.warurl.* - - diff --git a/jetty-osgi/jetty-osgi-boot/pom.xml b/jetty-osgi/jetty-osgi-boot/pom.xml index 9da0d60dd08..dbc4988f196 100644 --- a/jetty-osgi/jetty-osgi-boot/pom.xml +++ b/jetty-osgi/jetty-osgi-boot/pom.xml @@ -10,6 +10,7 @@ Jetty OSGi Boot bundle ${project.groupId}.boot + org.eclipse.jetty.osgi.boot.* @@ -99,13 +100,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.osgi.boot.* - - diff --git a/jetty-osgi/jetty-osgi-httpservice/pom.xml b/jetty-osgi/jetty-osgi-httpservice/pom.xml index 8a0281ec670..12d1a235fc1 100644 --- a/jetty-osgi/jetty-osgi-httpservice/pom.xml +++ b/jetty-osgi/jetty-osgi-httpservice/pom.xml @@ -10,6 +10,7 @@ Jetty OSGi HttpService bundle ${project.groupId}.httpservice + org.eclipse.jetty.osgi.httpservice.* @@ -70,13 +71,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.osgi.httpservice.* - - diff --git a/jetty-plus/pom.xml b/jetty-plus/pom.xml index 8ccca048e2f..403219abb71 100644 --- a/jetty-plus/pom.xml +++ b/jetty-plus/pom.xml @@ -10,6 +10,7 @@ Jetty JavaEE style services ${project.groupId}.plus + org.eclipse.jetty.plus.* @@ -46,13 +47,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.plus.* - - diff --git a/jetty-proxy/pom.xml b/jetty-proxy/pom.xml index 3a17d45f6e3..fd9a9e7ff16 100644 --- a/jetty-proxy/pom.xml +++ b/jetty-proxy/pom.xml @@ -10,18 +10,8 @@ Jetty Proxy ${project.groupId}.proxy + org.eclipse.jetty.proxy.* - - - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.proxy.* - - - - javax.servlet diff --git a/jetty-rewrite/pom.xml b/jetty-rewrite/pom.xml index 354ad29c113..a8354bae493 100644 --- a/jetty-rewrite/pom.xml +++ b/jetty-rewrite/pom.xml @@ -10,18 +10,8 @@ Jetty Rewrite Handler ${project.groupId}.rewrite + org.eclipse.jetty.rewrite.* - - - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.rewrite.* - - - - org.eclipse.jetty diff --git a/jetty-runner/pom.xml b/jetty-runner/pom.xml index 7ad60f33b7b..cef963449c3 100644 --- a/jetty-runner/pom.xml +++ b/jetty-runner/pom.xml @@ -11,6 +11,8 @@ target/distribution ${project.groupId}.runner + + true @@ -61,14 +63,6 @@ - - org.neo4j.build.plugins - clirr-maven-plugin - - - true - - org.apache.felix maven-bundle-plugin diff --git a/jetty-security/pom.xml b/jetty-security/pom.xml index b2245c03f2c..550f88a99ec 100644 --- a/jetty-security/pom.xml +++ b/jetty-security/pom.xml @@ -10,16 +10,10 @@ Jetty security infrastructure ${project.groupId}.security + org.eclipse.jetty.security.* - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.security.* - - org.apache.felix maven-bundle-plugin diff --git a/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java b/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java index 97d0013e16f..5396e0b363f 100644 --- a/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java +++ b/jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java @@ -163,7 +163,7 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr if (pathSpec == null || "".equals(pathSpec.trim()) || constraintMappings == null || constraintMappings.size() == 0) return Collections.emptyList(); - List mappings = new ArrayList(); + List mappings = new ArrayList<>(); for (ConstraintMapping mapping : constraintMappings) { if (pathSpec.equals(mapping.getPathSpec())) @@ -187,7 +187,7 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr if (pathSpec == null || "".equals(pathSpec.trim()) || constraintMappings == null || constraintMappings.size() == 0) return Collections.emptyList(); - List mappings = new ArrayList(); + List mappings = new ArrayList<>(); for (ConstraintMapping mapping : constraintMappings) { //Remove the matching mappings by only copying in non-matching mappings @@ -209,10 +209,10 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr */ public static List createConstraintsWithMappingsForPath(String name, String pathSpec, ServletSecurityElement securityElement) { - List mappings = new ArrayList(); + List mappings = new ArrayList<>(); //Create a constraint that will describe the default case (ie if not overridden by specific HttpMethodConstraints) - Constraint httpConstraint = null; + Constraint httpConstraint; ConstraintMapping httpConstraintMapping = null; if (securityElement.getEmptyRoleSemantic() != EmptyRoleSemantic.PERMIT || @@ -229,7 +229,7 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr } //See Spec 13.4.1.2 p127 - List methodOmissions = new ArrayList(); + List methodOmissions = new ArrayList<>(); //make constraint mappings for this url for each of the HttpMethodConstraintElements Collection methodConstraintElements = securityElement.getHttpMethodConstraints(); @@ -254,7 +254,7 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr //See spec 13.4.1.2 p127 - add an omission for every method name to the default constraint //UNLESS the default constraint contains all default values. In that case, we won't add it. See Servlet Spec 3.1 pg 129 if (methodOmissions.size() > 0 && httpConstraintMapping != null) - httpConstraintMapping.setMethodOmissions(methodOmissions.toArray(new String[methodOmissions.size()])); + httpConstraintMapping.setMethodOmissions(methodOmissions.toArray(new String[0])); return mappings; } @@ -435,9 +435,10 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr protected void processConstraintMapping(ConstraintMapping mapping) { Map mappings = _constraintMap.get(mapping.getPathSpec()); + if (mappings == null) { - mappings = new HashMap(); + mappings = new HashMap<>(); _constraintMap.put(mapping.getPathSpec(), mappings); } RoleInfo allMethodsRoleInfo = mappings.get(ALL_METHODS); @@ -588,7 +589,7 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr if (roleInfo == null) { //No specific http-method names matched - List applicableConstraints = new ArrayList(); + List applicableConstraints = new ArrayList<>(); //Get info for constraint that matches all methods if it exists RoleInfo all = mappings.get(ALL_METHODS); @@ -778,11 +779,11 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr if (_denyUncoveredMethods) return Collections.emptySet(); - Set uncoveredPaths = new HashSet(); - - for (String path : _constraintMap.keySet()) + Set uncoveredPaths = new HashSet<>(); + for (Entry> entry : _constraintMap.entrySet()) { - Map methodMappings = _constraintMap.get(path); + Map methodMappings = entry.getValue(); + //Each key is either: // : an exact method name // : * which means that the constraint applies to every method @@ -790,7 +791,7 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr if (methodMappings.get(ALL_METHODS) != null) continue; //can't be any uncovered methods for this url path - boolean hasOmissions = omissionsExist(path, methodMappings); + boolean hasOmissions = omissionsExist(entry.getKey(), methodMappings); for (String method : methodMappings.keySet()) { @@ -800,7 +801,7 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr for (String m : omittedMethods) { if (!methodMappings.containsKey(m)) - uncoveredPaths.add(path); + uncoveredPaths.add(entry.getKey()); } } else @@ -808,7 +809,7 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr //an exact method name if (!hasOmissions) //an http-method does not have http-method-omission to cover the other method names - uncoveredPaths.add(path); + uncoveredPaths.add(entry.getKey()); } } } @@ -849,7 +850,7 @@ public class ConstraintSecurityHandler extends SecurityHandler implements Constr return Collections.emptySet(); String[] strings = omission.split("\\."); - Set methods = new HashSet(); + Set methods = new HashSet<>(); for (int i = 0; i < strings.length - 1; i++) { methods.add(strings[i]); diff --git a/jetty-server/pom.xml b/jetty-server/pom.xml index 7cd353a839d..ed93f1658da 100644 --- a/jetty-server/pom.xml +++ b/jetty-server/pom.xml @@ -10,6 +10,7 @@ The core jetty server artifact. ${project.groupId}.server + org.eclipse.jetty.server.* @@ -25,13 +26,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.server.* - - diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java index 02e58fb50a4..fa01d97c304 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ServerConnector.java @@ -20,7 +20,6 @@ package org.eclipse.jetty.server; import java.io.Closeable; import java.io.IOException; -import java.net.BindException; import java.net.InetSocketAddress; import java.net.ServerSocket; import java.net.Socket; @@ -41,6 +40,7 @@ import org.eclipse.jetty.io.EndPoint; import org.eclipse.jetty.io.ManagedSelector; import org.eclipse.jetty.io.SelectorManager; import org.eclipse.jetty.io.SocketChannelEndPoint; +import org.eclipse.jetty.util.IO; import org.eclipse.jetty.util.annotation.ManagedAttribute; import org.eclipse.jetty.util.annotation.ManagedObject; import org.eclipse.jetty.util.annotation.Name; @@ -336,16 +336,16 @@ public class ServerConnector extends AbstractNetworkConnector if (serverChannel == null) { - serverChannel = ServerSocketChannel.open(); - InetSocketAddress bindAddress = getHost() == null ? new InetSocketAddress(getPort()) : new InetSocketAddress(getHost(), getPort()); - serverChannel.socket().setReuseAddress(getReuseAddress()); + serverChannel = ServerSocketChannel.open(); try { + serverChannel.socket().setReuseAddress(getReuseAddress()); serverChannel.socket().bind(bindAddress, getAcceptQueueSize()); } - catch (BindException e) + catch (Throwable e) { + IO.close(serverChannel); throw new IOException("Failed to bind to " + bindAddress, e); } } diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/ShutdownMonitor.java b/jetty-server/src/main/java/org/eclipse/jetty/server/ShutdownMonitor.java index c6d50fb620f..83e164ad68b 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/ShutdownMonitor.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/ShutdownMonitor.java @@ -271,8 +271,16 @@ public class ShutdownMonitor try { ServerSocket serverSocket = new ServerSocket(); - serverSocket.setReuseAddress(true); - serverSocket.bind(new InetSocketAddress(InetAddress.getByName(host), port)); + try + { + serverSocket.setReuseAddress(true); + serverSocket.bind(new InetSocketAddress(InetAddress.getByName(host), port)); + } + catch (Throwable e) + { + IO.close(serverSocket); + throw e; + } if (port == 0) { port = serverSocket.getLocalPort(); diff --git a/jetty-servlet/pom.xml b/jetty-servlet/pom.xml index d135c3bbefb..738c98833b5 100644 --- a/jetty-servlet/pom.xml +++ b/jetty-servlet/pom.xml @@ -11,6 +11,7 @@ Jetty Servlet Container ${project.groupId}.servlet + org.eclipse.jetty.* @@ -26,13 +27,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.servlet.* - - diff --git a/jetty-servlets/pom.xml b/jetty-servlets/pom.xml index 67f3c8976d9..db77ee445d8 100644 --- a/jetty-servlets/pom.xml +++ b/jetty-servlets/pom.xml @@ -11,18 +11,8 @@ Utility Servlets from Jetty ${project.groupId}.servlets + org.eclipse.jetty.servlets.* - - - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.servlets.* - - - - org.eclipse.jetty diff --git a/jetty-start/pom.xml b/jetty-start/pom.xml index 7d35c730f87..5a84f4ec711 100644 --- a/jetty-start/pom.xml +++ b/jetty-start/pom.xml @@ -10,6 +10,7 @@ The start utility ${project.groupId}.start + org.eclipse.jetty.start.* @@ -23,13 +24,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.start.* - - org.apache.maven.plugins maven-shade-plugin diff --git a/jetty-start/src/main/java/org/eclipse/jetty/start/Licensing.java b/jetty-start/src/main/java/org/eclipse/jetty/start/Licensing.java index 2839ebeea15..98f714c5f8d 100644 --- a/jetty-start/src/main/java/org/eclipse/jetty/start/Licensing.java +++ b/jetty-start/src/main/java/org/eclipse/jetty/start/Licensing.java @@ -71,13 +71,10 @@ public class Licensing System.err.printf(" + contains software not covered by the Eclipse Public License!%n"); System.err.printf(" + has not been audited for compliance with its license%n"); - for (String key : licenseMap.keySet()) + for (Map.Entry> entry : licenseMap.entrySet()) { - System.err.printf("%n Module: %s%n", key); - for (String line : licenseMap.get(key)) - { - System.err.printf(" + %s%n", line); - } + System.err.printf("%n Module: %s%n", entry.getKey()); + entry.getValue().forEach(line -> System.err.printf(" + %s%n", line)); } boolean licenseAck = false; diff --git a/jetty-unixsocket/pom.xml b/jetty-unixsocket/pom.xml index 1049c9a66ce..475fca596bf 100644 --- a/jetty-unixsocket/pom.xml +++ b/jetty-unixsocket/pom.xml @@ -10,6 +10,7 @@ Jetty UnixSocket ${project.groupId}.unixsocket + org.eclipse.jetty.unixsocket.* @@ -41,13 +42,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.unixsocket.* - - org.apache.maven.plugins maven-dependency-plugin diff --git a/jetty-util-ajax/pom.xml b/jetty-util-ajax/pom.xml index 08f5d14fb52..1b5b11644d9 100644 --- a/jetty-util-ajax/pom.xml +++ b/jetty-util-ajax/pom.xml @@ -10,18 +10,8 @@ JSON/Ajax Utility classes for Jetty ${project.groupId}.util.ajax + org.eclipse.jetty.util.ajax.* - - - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.util.ajax.* - - - - org.eclipse.jetty diff --git a/jetty-util/pom.xml b/jetty-util/pom.xml index 3b1daf78d48..ff927244e5c 100644 --- a/jetty-util/pom.xml +++ b/jetty-util/pom.xml @@ -10,6 +10,7 @@ Utility classes for Jetty ${project.groupId}.util + org.eclipse.jetty.util.* @@ -19,13 +20,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.util.* - - org.codehaus.mojo buildnumber-maven-plugin diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/Scanner.java b/jetty-util/src/main/java/org/eclipse/jetty/util/Scanner.java index de627e8a015..d33c2ed6aaa 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/Scanner.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/Scanner.java @@ -181,8 +181,8 @@ public class Scanner extends AbstractLifeCycle if (rootIncludesExcludes != null && !rootIncludesExcludes.isEmpty()) { //accepted if not explicitly excluded and either is explicitly included or there are no explicit inclusions - Boolean result = rootIncludesExcludes.test(dir); - if (Boolean.TRUE == result) + boolean result = rootIncludesExcludes.test(dir); + if (result) accepted = true; } else @@ -215,8 +215,8 @@ public class Scanner extends AbstractLifeCycle if (rootIncludesExcludes != null && !rootIncludesExcludes.isEmpty()) { //accepted if not explicitly excluded and either is explicitly included or there are no explicit inclusions - Boolean result = rootIncludesExcludes.test(file); - if (Boolean.TRUE == result) + boolean result = rootIncludesExcludes.test(file); + if (result) accepted = true; } else if (_filter == null || _filter.accept(f.getParentFile(), f.getName())) @@ -663,11 +663,12 @@ public class Scanner extends AbstractLifeCycle public synchronized void scanFiles() { _currentScan.clear(); - for (Path p : _scannables.keySet()) + for (Entry> entry : _scannables.entrySet()) { + Path p = entry.getKey(); try { - Files.walkFileTree(p, EnumSet.allOf(FileVisitOption.class),_scanDepth, new Visitor(p, _scannables.get(p), _currentScan)); + Files.walkFileTree(p, EnumSet.allOf(FileVisitOption.class),_scanDepth, new Visitor(p, entry.getValue(), _currentScan)); } catch (IOException e) { diff --git a/jetty-webapp/pom.xml b/jetty-webapp/pom.xml index 11fe4b3e77b..67036f53d8b 100644 --- a/jetty-webapp/pom.xml +++ b/jetty-webapp/pom.xml @@ -10,6 +10,7 @@ Jetty web application support ${project.groupId}.webapp + org.eclipse.jetty.webapp.* @@ -26,13 +27,6 @@ - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.webapp.* - - org.apache.maven.plugins maven-surefire-plugin diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/FragmentConfiguration.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/FragmentConfiguration.java index a0a16b383fb..55083b78c7b 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/FragmentConfiguration.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/FragmentConfiguration.java @@ -71,16 +71,9 @@ public class FragmentConfiguration extends AbstractConfiguration Map frags = (Map)context.getAttribute(FRAGMENT_RESOURCES); if (frags != null) { - for (Resource key : frags.keySet()) + for (Map.Entry entry : frags.entrySet()) { - if (key.isDirectory()) //tolerate the case where the library is a directory, not a jar. useful for OSGi for example - { - metaData.addFragment(key, frags.get(key)); - } - else //the standard case: a jar most likely inside WEB-INF/lib - { - metaData.addFragment(key, frags.get(key)); - } + metaData.addFragment(entry.getKey(), entry.getValue()); } } } diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaData.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaData.java index bdac19c2bb4..3ae900f4a35 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaData.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/MetaData.java @@ -44,20 +44,20 @@ public class MetaData public static final String ORDERED_LIBS = "javax.servlet.context.orderedLibs"; public static final Resource NON_FRAG_RESOURCE = EmptyResource.INSTANCE; - protected Map _origins = new HashMap(); + protected Map _origins = new HashMap<>(); protected WebDescriptor _webDefaultsRoot; protected WebDescriptor _webXmlRoot; - protected final List _webOverrideRoots = new ArrayList(); + protected final List _webOverrideRoots = new ArrayList<>(); protected boolean _metaDataComplete; - protected final List _descriptorProcessors = new ArrayList(); - protected final List _webFragmentRoots = new ArrayList(); - protected final Map _webFragmentNameMap = new HashMap(); - protected final Map _webFragmentResourceMap = new HashMap(); - protected final Map> _annotations = new HashMap>(); - protected final List _webInfClasses = new ArrayList(); - protected final List _webInfJars = new ArrayList(); - protected final List _orderedContainerResources = new ArrayList(); - protected final List _orderedWebInfResources = new ArrayList(); + protected final List _descriptorProcessors = new ArrayList<>(); + protected final List _webFragmentRoots = new ArrayList<>(); + protected final Map _webFragmentNameMap = new HashMap<>(); + protected final Map _webFragmentResourceMap = new HashMap<>(); + protected final Map> _annotations = new HashMap<>(); + protected final List _webInfClasses = new ArrayList<>(); + protected final List _webInfJars = new ArrayList<>(); + protected final List _orderedContainerResources = new ArrayList<>(); + protected final List _orderedWebInfResources = new ArrayList<>(); protected Ordering _ordering;//can be set to RelativeOrdering by web-default.xml, web.xml, web-override.xml protected boolean _allowDuplicateFragmentNames = false; protected boolean _validateXml = false; @@ -333,12 +333,8 @@ public class MetaData if (resource == null || !_webInfJars.contains(resource)) resource = EmptyResource.INSTANCE; - List list = _annotations.get(resource); - if (list == null) - { - list = new ArrayList(); - _annotations.put(resource, list); - } + List list = + _annotations.computeIfAbsent(resource, k -> new ArrayList<>()); list.add(annotation); } @@ -378,7 +374,7 @@ public class MetaData if (getOrdering() != null) { orderedWebInfJars = getOrderedWebInfJars(); - List orderedLibs = new ArrayList(); + List orderedLibs = new ArrayList<>(); for (Resource webInfJar : orderedWebInfJars) { //get just the name of the jar file @@ -545,10 +541,10 @@ public class MetaData return null; Resource jar = null; - for (Resource r : _webFragmentResourceMap.keySet()) + for (Map.Entry entry : _webFragmentResourceMap.entrySet()) { - if (_webFragmentResourceMap.get(r).equals(f)) - jar = r; + if (entry.getValue().equals(f)) + jar = entry.getKey(); } return jar; } diff --git a/jetty-websocket/pom.xml b/jetty-websocket/pom.xml index e7910934d50..ca0677baaf9 100644 --- a/jetty-websocket/pom.xml +++ b/jetty-websocket/pom.xml @@ -21,15 +21,11 @@ javax-websocket-client-impl javax-websocket-server-impl + + org.eclipse.jetty.websocket.* + - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.websocket.* - - org.apache.maven.plugins maven-jar-plugin diff --git a/jetty-xml/pom.xml b/jetty-xml/pom.xml index e25a9b4c5b0..35e1da9d456 100644 --- a/jetty-xml/pom.xml +++ b/jetty-xml/pom.xml @@ -10,16 +10,10 @@ The jetty xml utilities. ${project.groupId}.xml + org.eclipse.jetty.xml.* - - org.codehaus.mojo - findbugs-maven-plugin - - org.eclipse.jetty.xml.* - - org.apache.felix maven-bundle-plugin diff --git a/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlAppendable.java b/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlAppendable.java index 817c708a302..71121ef10e0 100644 --- a/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlAppendable.java +++ b/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlAppendable.java @@ -59,7 +59,7 @@ public class XmlAppendable { _out = out; _indent = indent; - _out.append("\n"); + _out.append("\n"); } public XmlAppendable openTag(String tag, Map attributes) throws IOException @@ -153,11 +153,10 @@ public class XmlAppendable private void attributes(Map attributes) throws IOException { - for (String k : attributes.keySet()) + for (Map.Entry entry : attributes.entrySet()) { - String v = attributes.get(k); - _out.append(' ').append(k).append("=\""); - content(v); + _out.append(' ').append(entry.getKey()).append("=\""); + content(entry.getValue()); _out.append('"'); } } diff --git a/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlConfiguration.java b/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlConfiguration.java index 62191d99cf7..31412518d0b 100644 --- a/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlConfiguration.java +++ b/jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlConfiguration.java @@ -1884,10 +1884,9 @@ public class XmlConfiguration if (properties.size() > 0) { Map props = new HashMap<>(); - for (Object key : properties.keySet()) - { - props.put(key.toString(), String.valueOf(properties.get(key))); - } + properties.entrySet().stream() + .forEach(objectObjectEntry -> props.put(objectObjectEntry.getKey().toString(), + String.valueOf(objectObjectEntry.getValue()))); configuration.getProperties().putAll(props); } diff --git a/pom.xml b/pom.xml index ee24a2b2c95..34ad95e2605 100644 --- a/pom.xml +++ b/pom.xml @@ -58,6 +58,8 @@ 3.0.0-M1 3.0.0-M1 + true + false 5.5 @@ -262,7 +264,8 @@ check - true + ${pmd.verbose} + ${pmd.verbose} @@ -785,27 +788,11 @@ buildnumber-maven-plugin 1.4 - - org.codehaus.mojo - clirr-maven-plugin - 2.8 - org.codehaus.mojo exec-maven-plugin 3.0.0 - - org.codehaus.mojo - findbugs-maven-plugin - 3.0.5 - - true - true - Max - org.eclipse.jetty.* - - org.eclipse.m2e lifecycle-mapping @@ -978,7 +965,7 @@ org.mortbay.jetty h2spec-maven-plugin - 1.0.2 + 1.0.3 @@ -1213,27 +1200,18 @@ maven-compiler-plugin true - javac-with-errorprone - true - - -XepAllErrorsAsWarnings - -Xep:OperatorPrecedence:OFF + + -XDcompilePolicy=simple + -Xplugin:ErrorProne -XepAllErrorsAsWarnings + + + com.google.errorprone + error_prone_core + 2.4.0 + + - - - org.codehaus.plexus - plexus-compiler-javac-errorprone - 2.8.8 - - - - com.google.errorprone - error_prone_core - 2.4.0 - - @@ -1280,34 +1258,6 @@ - - jdk8 - - [1.8,1.9) - - - - - - org.codehaus.mojo - clirr-maven-plugin - 2.8 - - clirr-report.html - ${project.build.directory}/clirr-report.xml - true - true - false - true - info - 9.4.6.v20170531 - false - - - - - - jdk11 @@ -1426,6 +1376,14 @@ ${env.GLOBAL_MVN_SETTINGS} 3 + false + + Medium + + Default + false + org.eclipse.jetty.* + false aggregates/jetty-all @@ -1433,6 +1391,11 @@ + + com.github.spotbugs + spotbugs-maven-plugin + 4.1.4 + org.apache.maven.plugins maven-surefire-plugin @@ -1443,6 +1406,29 @@ + + + com.github.spotbugs + spotbugs-maven-plugin + + + spotbugs + + check + + verify + + ${spotbugs.skip} + ${spotbugs.failOnError} + true + false + ${spotbugs.effort} + ${spotbugs.threshold} + + + + + diff --git a/tests/pom.xml b/tests/pom.xml index 4754721267f..a10bd494f85 100644 --- a/tests/pom.xml +++ b/tests/pom.xml @@ -11,6 +11,9 @@ tests-parent Jetty Tests :: Parent pom + + true + @@ -38,22 +41,6 @@ true - - org.codehaus.mojo - findbugs-maven-plugin - - - true - - - - org.codehaus.mojo - clirr-maven-plugin - - - true - -