Bug List: (This bug is not in your last search results)   Show last search results      Search page      Enter new bug
Bug#: 141940
Alias:
Product:
Component:
Status: RESOLVED
Resolution: FIXED
Assigned To: Krzysiek Pawlik <nelchael@gentoo.org>
Hardware:
OS:
Version:
Priority:
Severity:
Reporter: Wiktor Wandachowicz <siryes@gmail.com>
Add CC:
CC:
Remove selected CCs
URL:
Summary:
Status Whiteboard:
Keywords:

Filename Description Type Creator Created Size Actions
jaxme-0.3.1-r1.ebuild.diff jaxme-0.3.1-r1.ebuild.diff patch Wiktor Wandachowicz 2006-07-27 15:20 0000 863 bytes Details | Diff
jaxme-dom4j-problems.txt jaxme-dom4j-problems.txt plus emerge --info text/plain Wiktor Wandachowicz 2006-07-28 00:30 0000 17.35 KB Details
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 141940 depends on: Show dependency tree
Bug 141940 blocks:
Votes: 0    Show votes for this bug    Vote for this bug

Additional Comments: (this is where you put emerge --info)


Not eligible to see or edit group visibility for this bug.






View Bug Activity   |   Format For Printing   |   XML   |   Clone This Bug


Description:   Opened: 2006-07-27 15:16 0000
Recent upgrade, mixed results:

>>> Emerging (5 of 8) dev-java/jaxme-0.3.1-r1 to /
 * checking ebuild checksums ;-) ...                                     [ ok ]
 * checking auxfile checksums ;-) ...                                    [ ok ]
 * checking miscfile checksums ;-) ...                                   [ ok ]
 * checking ws-jaxme-0.3.1-src.tar.gz ;-) ...                            [ ok ]
 * Using: sun-jdk-1.5
>>> Unpacking source...

...

BUILD SUCCESSFUL
Total time: 15 seconds
>>> Source compiled.
>>> Test phase [not enabled]: dev-java/jaxme-0.3.1-r1

>>> Install jaxme-0.3.1-r1 into /var/tmp/portage/jaxme-0.3.1-r1/image/ category dev-java
>>> Completed installing jaxme-0.3.1-r1 into /var/tmp/portage/jaxme-0.3.1-r1/image/

man:
>>> Merging dev-java/jaxme-0.3.1-r1 to /
--- /usr/
--- /usr/share/
--- /usr/share/jaxme/
>>> /usr/share/jaxme/package.env
--- /usr/share/jaxme/lib/
>>> /usr/share/jaxme/lib/jaxmepm.jar
>>> /usr/share/jaxme/lib/jaxme2-rt.jar
>>> /usr/share/jaxme/lib/jaxme2.jar
>>> /usr/share/jaxme/lib/jaxmejs.jar
>>> /usr/share/jaxme/lib/jaxmeapi.jar
>>> /usr/share/jaxme/lib/jaxmexs.jar
--- /usr/share/doc/
>>> /usr/share/doc/jaxme-0.3.1-r1/
>>> /usr/share/doc/jaxme-0.3.1-r1/NOTICE.gz
>>> Regenerating /etc/ld.so.cache...
>>> dev-java/jaxme-0.3.1-r1 merged.

 dev-java/jaxme
    selected: 0.3.1
   protected: 0.3.1-r1
     omitted: none

...

>>> Emerging (6 of 8) dev-java/dom4j-1.6.1-r1 to /
 * checking ebuild checksums ;-) ...                                           
                                                                       [ ok ] *
checking auxfile checksums ;-) ...                                             
                                                                    [ ok ] *
checking miscfile checksums ;-) ...                                            
                                                                    [ ok ] *
checking dom4j-1.6.1.tar.gz ;-) ...                                            
                                                                    [ ok ] *
Using: sun-jdk-1.4
>>> Unpacking source...
>>> Unpacking dom4j-1.6.1.tar.gz to /var/tmp/portage/dom4j-1.6.1-r1/work
tar: A lone zero block at 78061
>>> Source unpacked.
Rewriting ./build.xml
>>> Compiling source in /var/tmp/portage/dom4j-1.6.1-r1/work/dom4j-1.6.1 ...
Buildfile: build.xml

init:
     [echo] ----------- dom4j 1.6.1 [2005] ------------

clean:

init:
     [echo] ----------- dom4j 1.6.1 [2005] ------------

prepare:
    [mkdir] Created dir: /var/tmp/portage/dom4j-1.6.1-r1/work/dom4j-1.6.1/build

prepare-src:
    [mkdir] Created dir:
/var/tmp/portage/dom4j-1.6.1-r1/work/dom4j-1.6.1/build/src
    [mkdir] Created dir:
/var/tmp/portage/dom4j-1.6.1-r1/work/dom4j-1.6.1/build/classes
     [copy] Copying 179 files to
/var/tmp/portage/dom4j-1.6.1-r1/work/dom4j-1.6.1/build/src

compile:
    [javac] Compiling 166 source files to
/var/tmp/portage/dom4j-1.6.1-r1/work/dom4j-1.6.1/build/classes
    [javac]
/var/tmp/portage/dom4j-1.6.1-r1/work/dom4j-1.6.1/build/src/org/dom4j/jaxb/JAXBSupport.java:12:
cannot access javax.xml.bind.JAXBContext
    [javac] bad class file:
/var/tmp/portage/dom4j-1.6.1-r1/work/dom4j-1.6.1/lib/jaxmeapi.jar(javax/xml/bind/JAXBContext.class)
    [javac] class file has wrong version 49.0, should be 48.0
    [javac] Please remove or make sure it appears in the correct subdirectory
of the classpath.
    [javac] import javax.xml.bind.JAXBContext;
    [javac]                       ^
    [javac] 1 error


Apparently jaxmeapi.jar contains classes in Java 5.0 format, while dom4j
expects them to be in Java 1.4 format (just look at the error). I've already
found more information on dom4j in bug #75646 and bug #124049 but not being
sure if this broken dependency is known I decided to file a new bug report.

Even though I know about build JVM switching, this time something is wrong.
I've made a small modification to the jaxme's ebuild and it compiled fine
with sun-jdk-1.4. This way newer dom4j also compiled fine and that's the
reason for 'minor' severity of this bug.

But why was it needed in the first place?

------- Comment #1 From Wiktor Wandachowicz 2006-07-27 15:20:53 0000 -------
Created an attachment (id=92877) [details]
jaxme-0.3.1-r1.ebuild.diff

RDEPEND and DEPEND modifications that limit jaxme to use {jre,jdk}-1.4*
instead of sun-jdk-1.5, even if the latter is installed.

------- Comment #2 From Jakub Moc (RETIRED) 2006-07-27 15:38:48 0000 -------
See http://www.gentoo.org/proj/en/java/java-upgrade.xml first.

------- Comment #3 From Wiktor Wandachowicz 2006-07-27 23:29:45 0000 -------
(In reply to comment #2)
> See http://www.gentoo.org/proj/en/java/java-upgrade.xml first.

Ok, thanks. But I've migrated to Generation-2 a long time ago, when it was
still called migration-overlay - see gentoo-java mailing archives for example:
http://news.gmane.org/gmane.linux.gentoo.java

Both ebuilds, jaxme-0.3.1-r1.ebuild and dom4j-1.6.1-r1 were commited yesterday:
* http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-java/jaxme/
* http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-java/dom4j/

However, there are some unexpected interdependencies. Namely, dom4j is being
built with jdk-1.4 and it depends on jaxme which happens to be compiled with
jdk-1.5. Obviously, it cannot work.

> But why was it needed in the first place?

Let me rephrase that: why was my local modification needed, when build-time JVM
switching is already in place? I'd be more than happy if my "patch" was not
necessary at all.


I'll try to reproduce the bug on another machine and let you know how it went.
Here's my current configuration from the first test system, ~x86:

# equery list sun-jdk
[ Searching for package 'sun-jdk' in all categories among: ]
 * installed packages
[I--] [ ~] dev-java/sun-jdk-1.4.2.12 (1.4)
[I--] [ ~] dev-java/sun-jdk-1.5.0.07-r1 (1.5)

# java-config-1 -L
[sun-jdk-1.4.2.12] "Sun JDK 1.4.2.12" (/etc/env.d/java/20sun-jdk-1.4.2.12) *

# java-config-2 -L
1) Sun JDK 1.4.2.12 [sun-jdk-1.4] (/usr/share/java-config-2/vm/sun-jdk-1.4)
*) Sun JDK 1.5.0.07 [sun-jdk-1.5] (/usr/share/java-config-2/vm/sun-jdk-1.5)


# equery which jaxme
/usr/portage/dev-java/jaxme/jaxme-0.3.1-r1.ebuild

# grep inherit `equery which jaxme`
inherit java-pkg-2 java-ant-2 eutils

# equery which dom4j
/usr/portage/dev-java/dom4j/dom4j-1.6.1-r1.ebuild

# grep inherit `equery which dom4j`
inherit java-pkg-2 java-ant-2

------- Comment #4 From Wiktor Wandachowicz 2006-07-28 00:30:22 0000 -------
Created an attachment (id=92894) [details]
jaxme-dom4j-problems.txt plus emerge --info

Alas, the problem persists. Here's a listing of packages and the output of
interesting errors. This is the result of emerging dom4j cleanly - as a new
package on this second (~amd64) machine.

On the first machine there was tomcat installed and both jaxme and dom4j
packages were its dependencies. So a problem raised when they were upgraded
simultaneously.

------- Comment #5 From Wiktor Wandachowicz 2006-07-28 00:32:59 0000 -------
Tested on two independent installations. Reopening, as the problem is not
related to the Java upgrade procedure.

------- Comment #6 From Wiktor Wandachowicz 2006-07-28 00:35:19 0000 -------
CC'ing Krzysiek Pawlik in hope that he can do something about it.

------- Comment #7 From Krzysiek Pawlik 2006-07-28 01:21:10 0000 -------
jaxme uses build<foo>.xml files - I've modified java-ant-2.eclass a bit and the
ebuild works now ok - all build files got rewritten.

------- Comment #8 From Wiktor Wandachowicz 2006-07-28 03:01:06 0000 -------
Thanks, that fixed the issue.

# emerge --sync
# emerge -avC jaxme
# emerge -av dom4j

... and all is fine. Good job!

Bug List: (This bug is not in your last search results)   Show last search results      Search page      Enter new bug