Description of problem: Current openjdk packages for different architectures (x86_64 and i386) have file conflicts between them. It would be desirable to eliminate these conflicts and make it possible to install openjdk RPMs for both architectures side by side, just like it's currently possible with shared libraries. Rationale: For some uses (e.g. running the Sun Java Wireless Toolkit - see http://forums.sun.com/thread.jspa?threadID=5217069) one has to install a 32-bit JDK for backwards compatibility. When an analogous problem pops up with C/C++ based software, one installs an i386 version of glibc, libstc++ and/or compat libraries. For the offical Fedora OpenJDK packages it's not possible since i386 and x86_64 packages conflict with each other. Version-Release number of selected component (if applicable): java-1.6.0-openjdk-1.6.0.0-9.b14.fc10.x86_64 How reproducible: On an x86_64 Fedora installation, try installing both i386 and x86_64 versions of OpenJDK. Steps to Reproduce: 1. # yum install java-1.6.0-openjdk.x86_64 java-1.6.0-openjdk.i386 Actual results: ... Transaction Check Error: package java-1.6.0-openjdk-1:1.6.0.0-9.b14.fc10.x86_64 (which is newer than java-1.6.0-openjdk-1:1.6.0.0-2b12.fc10.i386) is already installed file /usr/share/doc/java-1.6.0-openjdk-1.6.0.0/ChangeLog from install of java-1.6.0-openjdk-1:1.6.0.0-2b12.fc10.i386 conflicts with file from package java-1.6.0-openjdk-1:1.6.0.0-9.b14.fc10.x86_64 file /usr/share/doc/java-1.6.0-openjdk-1.6.0.0/NEWS from install of java-1.6.0-openjdk-1:1.6.0.0-2b12.fc10.i386 conflicts with file from package java-1.6.0-openjdk-1:1.6.0.0-9.b14.fc10.x86_64 file /usr/share/doc/java-1.6.0-openjdk-1.6.0.0/README from install of java-1.6.0-openjdk-1:1.6.0.0-2b12.fc10.i386 conflicts with file from package java-1.6.0-openjdk-1:1.6.0.0-9.b14.fc10.x86_64 It seems that the conflict between i386 and x86_64 packages is only in /usr/share/doc basic documentation files - ChangeLog, NEWS and README. It might be enough to make the directories keyed by package's architecture, e.g.: /usr/share/doc/java-1.6.0-openjdk-1.6.0.0.x86_64 /usr/share/doc/java-1.6.0-openjdk-1.6.0.0.i386 Expected results: 1. Installation of both JDK's should proceed successfully. 2. it should be possible to simply run java and javac from respective directories and they should work like expected: # /usr/lib/jvm/jre-1.6.0-openjdk.i386/bin/java -version ... outputs 32-bit JVM's version... # /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java -version ... outputs 64-bit JVM's version... 3. Ideally, the default java/javac should be settable using the alternatives mechanism that's already in place: Currently: # alternatives --config java There are 2 programs which provide 'java'. Selection Command ----------------------------------------------- *+ 1 /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java 2 /usr/lib/jvm/jre-1.5.0-gcj/bin/java Ideally: # alternatives --config java There are 2 programs which provide 'java'. Selection Command ----------------------------------------------- *+ 1 /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java 2 /usr/lib/jvm/jre-1.6.0-openjdk.i386/bin/java 3 /usr/lib/jvm/jre-1.5.0-gcj/bin/java
*** This bug has been marked as a duplicate of bug 484858 ***