Wrong POM dependency in javax.servlet.jsp:jsp-api:2.2
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
tomcat7 (Ubuntu) | ||||||
Trusty |
Fix Released
|
High
|
Joshua Powers | |||
Xenial |
Won't Fix
|
High
|
Joshua Powers | |||
Yakkety |
Won't Fix
|
High
|
Joshua Powers |
Bug Description
== Begin SRU Template ==
[Impact]
* The Tomcat7 package specifies an incorrect version of the javax.servlet api. If users attempt to use the version specified, 2.2, it will fail trying to find that version as it does not exist at all.
* Currently the version is auto filled in by @MAVEN.
* The official servlet version for Tomcat 7, 3.0, was specified here: https:/
[Test Case]
An example to test Tomcat7 on Trusty. The same instructions can apply to other releases.
Overview: Install tomcat7 and attempt to build the pom. It will fail as the built in library specifies a non-existent version of 2.2.
* lxc launch ubuntu-daily:trusty trusty
* lxc exec trusty bash
* apt install tomcat7 maven-debian-helper libmaven-
* wget https:/
* mvn-debian -q generate-sources -X
[Regression Potential]
* Users currently experiencing this issue would be expecting a SRU fix to come from us. Working around it would require changing the /usr/share/
* There is the slight, albeit incredibly low chance, that someone actually has scripted something to modify the package itself and swap out @MAVEN.
* The tomcat8 package has gone away from using @MAVEN.
[Other Info]
Hi,
Ubuntu 16.04.1 LTS,
libservlet3.
In /usr/share/
<dependency>
<groupId>
<artifactId>
<version>
<scope>
</dependency>
But there is no corresponding javax.servlet:
I've attached a test pom.xml to reproduce the bug:
ubuntu@build:~$ ls -la pom.xml
-rw-rw-r-- 1 ubuntu ubuntu 1185 Feb 13 10:12 pom.xml
ubuntu@build:~$
ubuntu@build:~$ mvn-debian -q generate-sources
find: ‘/usr/share/
find: ‘/usr/share/
find: ‘/usr/share/
[ERROR] Failed to execute goal on project yyy: Could not resolve dependencies for project xxx:yyy:pom:debian: Cannot access central (https:/
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://
ubuntu@build:~$
I believe that javax.servlet.
== End SRU Template ==
Changed in tomcat7 (Ubuntu): | |
status: | Confirmed → In Progress |
description: | updated |
Changed in tomcat7 (Ubuntu): | |
status: | In Progress → Fix Committed |
Changed in tomcat7 (Ubuntu Trusty): | |
status: | New → In Progress |
Changed in tomcat7 (Ubuntu Xenial): | |
status: | New → In Progress |
Changed in tomcat7 (Ubuntu Yakkety): | |
status: | New → In Progress |
Changed in tomcat7 (Ubuntu Trusty): | |
assignee: | nobody → Joshua Powers (powersj) |
Changed in tomcat7 (Ubuntu Xenial): | |
assignee: | nobody → Joshua Powers (powersj) |
Changed in tomcat7 (Ubuntu Yakkety): | |
assignee: | nobody → Joshua Powers (powersj) |
Changed in tomcat7 (Ubuntu Trusty): | |
importance: | Undecided → High |
Changed in tomcat7 (Ubuntu Xenial): | |
importance: | Undecided → High |
Changed in tomcat7 (Ubuntu Yakkety): | |
importance: | Undecided → High |
description: | updated |
Changed in tomcat7 (Ubuntu Xenial): | |
status: | In Progress → Won't Fix |
Thanks for the bug report.
# Steps to reproduce
I am kind of a novice when it comes to maven and what we have in Ubuntu, so my apologies if I miss something obvious here. In a Xenial LXD container I ran the following:
> apt install maven-debian-helper libmaven- dependency- plugin- java libservlet3.0-java
> wget <your pom.xml>
> mvn-deiban -q generate-sources -X
It failed as expected with the your error message. After looking at your suggestion if I modified: maven-repo/ javax/servlet/ jsp/jsp- api/2.2/ jsp-api. 2.2.pom
/usr/share/
to point at 3.0 and not 2.2 and your build worked.
# Source javaxpoms/ jsp-api. pom and if you pull the Ubuntu source you will find that the version is set to "<version> @MAVEN. DEPLOY. VERSION@ </version> ". Well in debian/rules there is a stanza for setting it:
The source for that file is contained in debian/
perl -p -i -e 's/\@MAVEN. DEPLOY. VERSION\ @/2.2/' \
debian/ javaxpoms/ jsp-api. pom
I believe you would then propose we change 2.2 to 3.0?