Slackware64 13.1 packages JRE and JDK conflict?
Hi, the packages jre and jdk conflict with each other, to install jdk I should remove jre?
|
I've got both installed on my machine with no problems.
|
I've never experienced a conflict between jre and jdk and I've been using them in all versions since 11.
I did experience a problem with netbeans 6.x that once may be think something like that was happening, but it turned out to be a netbeans problem. |
Quote:
JRE (runtime environment) is included in the JDK (development kit). You should uninstall one before installing the other. |
JRE / JDK Conflict for Opera
I use the Opera web browser. Removing JRE removes the folder /usr/java/jre1.6.0_26 and thus, Opera cannot use Java any longer. As explained on the Opera plugins page, Opera does not use the JRE plugin but invokes the binary file directly. Opera says to "locate libnpjp2.so" and point the plugins directory there to find the Java plugin.
However, after I removed the JRE and installed JDK, "locate libnpjp2.so" came up empty. What I had to do was make a copy of /usr/java/jre1.6.0_26 elsewhere, remove JRE, and install JDK, then replace the jre1.6.0_26 folder at /usr/java/jre1.6.0_26 in order to have both JDK installed and Opera capable of running Java content. - Bill |
JDE and JRE should not conflict with each other. One is a runtime kit and the other is the software developers kit. You can actually have both on a system without penalty.
Java using applications like Web Browsers usually use a symbolic linked file and not the actual binary. If they aren't, then the authors probably have them built incorrectly. |
I was curious about this issue so I compared the listings from both JRE and JDK packages to see if there are duplicated files.
Problem is, I don't have Slackware64 13.1 handy, only Slackware64 13.37, but the procedure should be the same. This is what I did: Code:
$ tar -tvf jre-6u25-x86_64-1.txz | awk '{print $6}' > jre.files Code:
./ |
The JDE files do overwrite the JRE files, but they are the same exact files in essence minus a few JRE specific ones used by various programs. In reality JRE and JDE both are subsets of the entire Java package. One is geared for software development and the other for general usage, but they can co-exist.
|
Yes, they can co-exist. But, rephrasing the OP's question, is it correct to affirm that if JDK is installed, then JRE is not needed?
|
You still need JRE for Java applications. The JDE only provides basically what any other developer package has like headers, libraries, code samples, documentation, and a basic runtime(s). The JRE is what provides the shared libraries for the system and all other applications that are required for Java using applications to work correctly.
So yes, JRE regardless is still required. |
And the 'conflicting' files are no problem, either. Many Slackware packages contains duplicates -like glibc-solibs and glibc, and aaa_elflibs contains duplicates of many packages.
|
Quote:
|
I once had a problem when compiling a java program. I believe it was the maven framework that gave the problems.
Thing is, the JDK does include the runtime. But it is located in a different directory. If you have both the JRE and the JDK, the JRE will be preferred by programs before the JDK's runtime. Since maven looks for the JDK in a directory relative to the runtime, that gave me problems. Uninstalling the JRE solved the thing. Never had any problems since then. Quote:
Try this to find the library: Code:
find /usr/ -name libnpjp2.so |
Quote:
|
It is simple.
Quote:
Quote:
You should have pointed Opera to the file in the JDK, it is there, see my previous post in this thread for an explanation why you didn't find it. |
All times are GMT -5. The time now is 07:43 PM. |