To what should JAVA_HOME be set?
On Sun, Feb 28, 2021 at 02:43:34PM +0100, Thorsten Glaser wrote:
On Sun, 28 Feb 2021, Geert Stappers wrote:
To what should JAVA_HOME be set?
It should be unset. Also ideally, you have only ever one JRE installed.
Everything else is a nightmare.
:-)
To make this work with Java >8 and Maven, you’ll need¹…
<profile>
<id>jre-not-below-jdk</id>
<activation>
<file>
<exists>${java.home}/bin/javadoc</exists>
</file>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<javadocExecutable>${java.home}/bin/javadoc</javadocExecutable>
</configuration>
</plugin>
</plugins>
</build>
</profile>
… or the Debian-patched version of the maven-javadoc-plugin.
Sharing my "nightmare" with you
| $ javaws ~/Downloads/launch\(3\).jnlp
| Codebase matches codebase manifest attribute, and application is signed. Continuing. See: http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/security/no_redeploy.html for details.
| Starting application [tw.com.aten.ikvm.KVMMain] ...
| Buf size:425984
| Exception in thread "AWT-EventQueue-1" javax.xml.parsers.FactoryConfigurationError: Provider for class javax.xml.parsers.DocumentBuilderFactory cannot be created
| at java.xml/javax.xml.parsers.FactoryFinder.findServiceProvider(FactoryFinder.java:305)
| at java.xml/javax.xml.parsers.FactoryFinder.find(FactoryFinder.java:261)
| at java.xml/javax.xml.parsers.DocumentBuilderFactory.newInstance(DocumentBuilderFactory.java:140)
| ...Java stack trace...
Manual page of `javaws` mentions JAVA_HOME
With `apt-file search DocumentBuilderFactory` I did found
| openjdk-11-doc: /usr/share/doc/openjdk-11-jre-headless/api/java.xml/javax/xml/parsers/DocumentBuilderFactory.html
| openjdk-11-doc: /usr/share/doc/openjdk-11-jre-headless/api/java.xml/javax/xml/parsers/class-use/DocumentBuilderFactory.html
| openjdk-15-doc: /usr/share/doc/openjdk-15-jre-headless/api/java.xml/javax/xml/parsers/DocumentBuilderFactory.html
| openjdk-15-doc: /usr/share/doc/openjdk-15-jre-headless/api/java.xml/javax/xml/parsers/class-use/DocumentBuilderFactory.html
| openjdk-16-doc: /usr/share/doc/openjdk-16-jre-headless/api/java.xml/javax/xml/parsers/DocumentBuilderFactory.html
| openjdk-16-doc: /usr/share/doc/openjdk-16-jre-headless/api/java.xml/javax/xml/parsers/class-use/DocumentBuilderFactory.html
| openjdk-17-doc: /usr/share/doc/openjdk-17-jre-headless/api/java.xml/javax/xml/parsers/DocumentBuilderFactory.html
| openjdk-17-doc: /usr/share/doc/openjdk-17-jre-headless/api/java.xml/javax/xml/parsers/class-use/DocumentBuilderFactory.html
Hence the original
To what should JAVA_HOME be set?
At https://www.wikihow.com/Set-Java-Home#For-Linux I found JAVA_HOME=/usr/java/jdk1.6.0_06/bin/java
But there is no /usr/java/ on my Debian system.
Transforming
intoWhich value has JAVA_HOME for you?
Which sane value for JAVA_HOME should I try
with next `javaws launch.jnlp` ?
Groeten
Geert Stappers
On Sun, 28 Feb 2021, Geert Stappers wrote:
To what should JAVA_HOME be set?
It should be unset. Also ideally, you have only ever one JRE installed.
Everything else is a nightmare.
To make this work with Java >8 and Maven, you’ll need¹…
<profile>
<id>jre-not-below-jdk</id>
<activation>
<file>
<exists>${java.home}/bin/javadoc</exists>
</file>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<javadocExecutable>${java.home}/bin/javadoc</javadocExecutable>
</configuration>
</plugin>
</plugins>
</build>
</profile>
… or the Debian-patched version of the maven-javadoc-plugin.
To what should JAVA_HOME be set?
intoWhich value has JAVA_HOME for you?
at most of my Java packages i set
export JAVA_HOME := /usr/lib/jvm/default-java
in debian/rules
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 293 |
Nodes: | 16 (2 / 14) |
Uptime: | 209:30:56 |
Calls: | 6,619 |
Calls today: | 1 |
Files: | 12,168 |
Messages: | 5,317,180 |