Use Ivy for resolving external dependencies.

Includes a metrics-lib upgrade to 2.6.2 and an upgrade to the latest
metrics-base commit 256e619.

Implements part of #31326.
This commit is contained in:
Karsten Loesing 2019-08-06 17:32:51 +02:00
parent c71f0325e1
commit 844fcbe9f7
4 changed files with 37 additions and 39 deletions

View File

@ -5,6 +5,15 @@
- Add Apache Commons Math 3.6.1 as dependency.
- Extend ipv6servers module to generate servers part of legacy
module.
- Use Ivy for resolving external dependencies rather than relying
on files found in Debian stable packages. Requires installing Ivy
(using `apt-get install ivy`, `brew install ivy`, or similar) and
running `ant resolve` (or `ant -lib /usr/share/java resolve`).
Retrieved files are then copied to the `lib/` directory, except
for dependencies on other metrics libraries that still need to be
copied to the `lib/` directory manually. Current dependency
versions resolved by Ivy are the same as in Debian stretch with
few exceptions.
# Changes in version 1.2.0 - 2018-08-25

View File

@ -4,12 +4,13 @@
<!ENTITY base SYSTEM "src/build/java/base.xml">
]>
<project default="usage" name="metrics-web" basedir=".">
<project default="usage" name="metrics-web" basedir="."
xmlns:ivy="antlib:org.apache.ivy.ant">
<property name="javadoc-title" value="MetricsWeb API Documentation"/>
<property name="implementation-title" value="metrics-web" />
<property name="release.version" value="1.2.0-dev" />
<property name="metricslibversion" value="2.4.0" />
<property name="metricslibversion" value="2.6.2" />
<property name="exoneratorversion" value="4.1.0" />
<property name="jetty.version" value="-9.2.21.v20170120" />
<property name="warfile"
@ -46,48 +47,48 @@
<include name="jackson-databind-2.8.6.jar"/>
<include name="logback-core-1.1.9.jar" />
<include name="logback-classic-1.1.9.jar" />
<include name="REngine.jar"/>
<include name="Rserve.jar"/>
<include name="REngine-2.1.0.jar"/>
<include name="Rserve-1.8.1.jar"/>
<include name="slf4j-api-1.7.22.jar"/>
</patternset>
<patternset id="library" >
<patternset refid="common" />
<include name="metrics-lib-${metricslibversion}.jar"/>
<include name="metrics-lib-${metricslibversion}-thin.jar"/>
<include name="commons-compress-1.13.jar"/>
<include name="commons-math3-3.6.1.jar"/>
<include name="postgresql-9.4.1212.jar"/>
<include name="servlet-api-3.1.jar"/>
<include name="javax.servlet-api-3.1.0.jar"/>
<include name="xz-1.6.jar"/>
</patternset>
<patternset id="web" >
<include name="exonerator-${exoneratorversion}-thin.jar" />
<include name="jetty9-annotations${jetty.version}.jar"/>
<include name="jetty9-server${jetty.version}.jar"/>
<include name="jetty9-servlet${jetty.version}.jar"/>
<include name="jetty9-util${jetty.version}.jar"/>
<include name="jetty9-http${jetty.version}.jar"/>
<include name="jetty9-io${jetty.version}.jar"/>
<include name="jetty9-xml${jetty.version}.jar"/>
<include name="jetty9-webapp${jetty.version}.jar"/>
<include name="jetty9-continuation${jetty.version}.jar"/>
<include name="jetty9-security${jetty.version}.jar"/>
<include name="jetty-annotations${jetty.version}.jar"/>
<include name="jetty-server${jetty.version}.jar"/>
<include name="jetty-servlet${jetty.version}.jar"/>
<include name="jetty-util${jetty.version}.jar"/>
<include name="jetty-http${jetty.version}.jar"/>
<include name="jetty-io${jetty.version}.jar"/>
<include name="jetty-xml${jetty.version}.jar"/>
<include name="jetty-webapp${jetty.version}.jar"/>
<include name="jetty-continuation${jetty.version}.jar"/>
<include name="jetty-security${jetty.version}.jar"/>
</patternset>
<patternset id="webruntime" >
<include name="asm-5.2.jar" />
<include name="asm-commons-5.2.jar" />
<include name="asm-5.0.1.jar" />
<include name="asm-commons-5.0.1.jar" />
<include name="commons-compress-1.13.jar"/>
<include name="jetty9-plus${jetty.version}.jar"/>
<include name="jetty9-jndi${jetty.version}.jar"/>
<include name="jetty9-apache-jsp${jetty.version}-tweaked.jar" />
<include name="jetty-plus${jetty.version}.jar"/>
<include name="jetty-jndi${jetty.version}.jar"/>
<include name="apache-jsp${jetty.version}.jar" />
<include name="metrics-lib-${metricslibversion}.jar"/>
<include name="taglibs-standard-spec-1.2.5.jar"/>
<include name="tomcat8-embed-jasper-8.5.14.jar" />
<include name="tomcat8-embed-el-8.5.14.jar" />
<include name="tomcat8-embed-core-8.5.14.jar" />
<include name="eclipse-ecj-3.11.1.jar" />
<include name="tomcat-embed-jasper-8.5.14.jar" />
<include name="tomcat-embed-el-8.5.14.jar" />
<include name="tomcat-embed-core-8.5.14.jar" />
<include name="ecj-4.6.1.jar" />
</patternset>
<patternset id="runtime" >
@ -138,22 +139,10 @@
<!-- Create a .war file for deployment. -->
<target name="war"
depends="submoduleupdate,jar">
<echo message="Removing problematic service definitions from"/>
<echo message="${libs}/jetty9-apache-jsp${jetty.version}.jar and using "/>
<echo message="${libs}/jetty9-apache-jsp${jetty.version}-tweaked.jar below." />
<delete file="${libs}/jetty9-apache-jsp${jetty.version}-tweaked.jar"
quiet="true" />
<jar destfile="${libs}/jetty9-apache-jsp${jetty.version}-tweaked.jar">
<zipfileset src="${libs}/jetty9-apache-jsp${jetty.version}.jar" >
<exclude name="**/javax.servlet.ServletContainerInitializer"/>
</zipfileset>
</jar>
<antcall target="generate-ml-javadoc" />
<war destfile="${dist}/${warfile}"
duplicate="fail"
webxml="${resources}/web.xml"
basedir="${classes}">
<restrict>

@ -1 +1 @@
Subproject commit ed4819215aa60cc8935f955d9404f30e83dd892b
Subproject commit 256e6192ad0066e48c6abb0ee9ac71714c7a3a0f

@ -1 +1 @@
Subproject commit 7032e73a6471f3a4d7782ef65fc3d4cf00bb0ac1
Subproject commit e1728709b5ed30dace2dd5b7e47a3e3c5e9e5736