FreeBSD: endlich offizielles Java für FreeBSD (SDK + JRE)

Wenn du mehrere JDKs installiert hast kannst du mit JAVA_PREFERRED_PORTS auswählen welches normalerweise verwendet wird.
 
javavm(1) schrieb:
This selection process is usually achieved through the use of
/usr/ports/Mk/bsd.java.mk. However, if this is not present then javavm
will use its own internal selection process which is designed to behave
almost identically.
Wenn es bei dir nicht funktioniert ist wohl /usr/ports/Mk/bsd.java.mk nicht vorhanden.
 
Hm,

ich muss mir wohl noch mal in Ruhe:
Code:
man javavm
durchlesen, und die anderen manuals,
auf die darin verwiesen wird.

Jedenfalls steht in meiner:
/usr/local/etc/javavms
Code:
/usr/local/diablo-jdk1.5.0/bin/java # DiabloCaffe1.5.0
/usr/local/jdk1.5.0/bin/java # FREEBSD-JDK1.5.0
/usr/local/linux-sun-jdk1.5.0/bin/java # Linux-Sun-JDK1.5.0.06
/usr/local/jdk1.4.2/bin/java # FREEBSD-JDK1.4.2
/usr/local/linux-sun-jdk1.4.2/bin/java # Linux-Sun-JDK1.4.2.11


Gruß, Fusselbär
 
Maledictus schrieb:
Doch, ist vorhanden und aktuell, aber siehe da:
Code:
% grep JAVA_PORT_NATIVE_FREEBSD_JDK_1_5 /usr/ports/Mk/*
%
Der Eintrag ist noch nicht vorhanden, scheint bei mir aber trotzdem zu funktionieren.
 
Hallo Maledictus,

aber dafür läuft bei mir der Frosch eins A. :D

Aber ich versuche gerade die Manuals zu begreifen,
wenn ich das mit dem Java VM wrapper richtig verstanden habe:
man javavm
...By default, javavm will select the most “native” and up to date version of the Java VM when a given symbolic link is used, invoking and passing the arguments to the matching executable within the chosen Java VM. The choice of Java VM may also be influenced by using environment variables to constrain the version, vendor and operating system of the Java VM...
also, der Java VM wrapper sucht sich das passende raus.

Und weiter im gleichen Manual:
...ENVIRONMENT



JAVA_HOME
The presence of this variable in the environment when executing javavm will override all other considerations regarding the Java VM to be used and the Java VM located at ${JAVA_HOME}/bin/java will be used.
This variable is set by javavm when executing the actual Java VM and will be available to it and all of its child processes.

JAVA_OS
A space delimited list of operating systems. The selected Java VM must have been created for one of the operating systems in the list.
Currently allowed operating system values are `native' and `linux'

JAVA_VENDOR
A space delimited list of Java VM vendors. The selected Java VM must have been released by one of the vendors in the list.
Currently allowed vendors are `bsdjava' , `freebsd' , `blackdown' , `ibm' and `sun'

JAVA_VERSION
A space delimited list of versions of the Java VM that may be used. By appending a `+' to a version, any Java VM with a version greater than or equal to the given version will be used.
Currently allowed versions are `1.1' , `1.1+' , `1.2' , `1.2+' , `1.3' , `1.3+' , `1.4' , `1.4+' , `1.5' and `1.5+'
...
Wobei, wenn ich das richtig verstanden habe,
die Umgebungsvariablen:
Code:
JAVA_HOME
und
Code:
JAVA_VERSION
interessant sein könnten.

Und setzen kann man die wohl in:
Code:
/etc/profile
oder in der:
Code:
/etc/csh.cshrc
Zum setzen der Umgebungsvariablen stand hier was:
http://www.freebsd.org/doc/en_US.ISO8859-1/articles/java-tomcat/x159.html

Oder, ich lasse es einfach so,
und freue mich, das der Frosch schön geschmeidig rennt,
und der Java VM wrapper mehr davon versteht, als ich. :ugly:

Bitte korrigiert mich, falls ich falsch liegen sollte!
Bin doch nur ein FreeBSD Benutzer.


Gruß, Fusselbär
 
Zuletzt bearbeitet:
Hallo Maledictus,

habe gestern auf des neue BSD JDK 1.5 Patchset 3 aktualisiert,
und nun gibt es auch bei mir keinen Upload oder Download mehr bei azureus.
Nicht einmal mehr beim aktuellen Beta azureus.jar,
das geht normalerweise rasend schnell.
(Gegenprobe: gleicher Torrent mit ktorrent, lief rasend schnell)

Habe dann mal azureus neu kompiliert,
und der Port sagte, das diablo-jdk15 verwendet wird.
(Das bei mir ebenfalls installiert ist)
Aber azureus will weder Uploaden noch Downloaden.

Ich fürchte, da hakelt leider noch irgendwas,
mit dem schönen neuen Java. ;'(
(Und ich kenne mich damit nicht aus)


Gruß, Fusselbär
 
In Sachen Java 1.5 vs. Azureus

Hallo,

ich bin es noch mal, in Sachen Java 1.5 vs. Azureus.
Habe inzwischen mal die andern Java Versionen runtergeschmissen,
und nur noch
Code:
jdk-1.5.0p3         Java Development Kit 1.5.0
linux-sun-jdk-1.5.0.06,2 Sun Java Development Kit 1.5 for Linux
sind bei mir zur Zeit installiert.

pkg_deinstall jdk-1.4.2p8_3 machte bei mir wegen folgendem Mecker:
Code:
apache-ant-1.6.5_1
classpath-0.19_1
jakarta-commons-cli-1.0,1
jakarta-commons-collections-3.1
jakarta-commons-lang-2.1
junit-3.8.1
jzip.org-0.2.0
log4j-1.2.13
netscape-java40-1999.11.15
seda-3.0
swt-3.1.1
v4all-2.1.1.9
xerces-j-2.7.1
Die Abhängigkeiten habe ich dann zunächst mit pkgdb -F gefixt.
Dann habe ich der Reihe nach alles neu mit jdk-1.5.0p3 gebaut.
Dabei wollten
Code:
jakarta-commons-cli-1.0,1
jakarta-commons-collections-3.1
jakarta-commons-lang-2.1 #da bin ich mir nicht ganz sicher, ob das nicht doch baute
nicht mit Java 1.5 bauen und hatten nach Java 1.4 Verlangen.
Ich habe dann kurzerhand mittels pkg_deinstall jakarta-\*
die obengenannten Jakarta-commons-* deinstalliert.
Der portupgrade hat dabei keine Abhängikeiten angemäkelt.
Anschließend habe ich dann noch einmal Eclipse mit Java 1.5 neugebaut,
und dann wollte ich zum krönendem Abschluß Azureus neubauen,
aber es zog sich dann doch jakarta als Abhängigkeit,
und infolge dessen kam es, wie es kommen mußte,
und der Compiler zum Stillstand.

Das war das Ende:
Code:
  [javadoc] Standard Doclet version 1.5.0-p3
  [javadoc] Building tree for all the packages and classes...
  [javadoc] Building index for all the packages and classes...
  [javadoc] Building index for all classes...
  [javadoc] Generating /usr/ports/java/jakarta-commons-lang/work/commons-lang-2.1/dist/docs/api/stylesheet.css...
  [javadoc] 14 warnings

BUILD SUCCESSFUL
Total time: 16 seconds
===>  Installing for jakarta-commons-lang-2.1
===>   jakarta-commons-lang-2.1 depends on file: /usr/local/jdk1.5.0/bin/java - found
===>   Generating temporary packing list
>> Installing JAR as /usr/local/share/java/classes/commons-lang.jar... [ DONE ]
>> Installing documentation in /usr/local/share/doc/commons-lang/... [ DONE ]
===>   Registering installation for jakarta-commons-lang-2.1
===>   Returning to build of jakarta-commons-cli-1.0,1
===>   jakarta-commons-cli-1.0,1 depends on file: /usr/local/jdk1.5.0/bin/java - found
===>   jakarta-commons-cli-1.0,1 depends on file: /usr/local/bin/ant - found
===>  Configuring for jakarta-commons-cli-1.0,1
===>  Building for jakarta-commons-cli-1.0,1
Buildfile: build.xml

init:

get-deps:

jar:
    [mkdir] Created dir: /usr/ports/java/jakarta-commons-cli/work/commons-cli-1.0/target/classes
    [javac] Compiling 18 source files to /usr/ports/java/jakarta-commons-cli/work/commons-cli-1.0/target/classes
    [javac] error: error reading /usr/local/share/java/classes/backup_azureus_cvs_updates/config/ConfigBackup2.4.0.2/Azureus2.jar; java.util.zip.ZipException: error in opening zip file
    [javac] /usr/ports/java/jakarta-commons-cli/work/commons-cli-1.0/src/java/org/apache/commons/cli/TypeHandler.java:69: warning: [deprecation] org.apache.commons.lang.NumberUtils in org.apache.commons.lang has been deprecated
    [javac] import org.apache.commons.lang.NumberUtils;
    [javac]                                ^
    [javac] /usr/ports/java/jakarta-commons-cli/work/commons-cli-1.0/src/java/org/apache/commons/cli/TypeHandler.java:178: warning: [deprecation] org.apache.commons.lang.NumberUtils in org.apache.commons.lang has been deprecated
    [javac]             return NumberUtils.createNumber(str);
    [javac]                    ^
    [javac] Note: Some input files use unchecked or unsafe operations.
    [javac] Note: Recompile with -Xlint:unchecked for details.
    [javac] 1 error
    [javac] 2 warnings

BUILD FAILED
/usr/ports/java/jakarta-commons-cli/work/commons-cli-1.0/build.xml:24: Compile failed; see the compiler error output for details.

Total time: 7 seconds
*** Error code 1

Stop in /usr/ports/java/jakarta-commons-cli.
*** Error code 1

Stop in /usr/ports/net-p2p/azureus.
** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portupgrade59220.0 make
** Fix the problem and try again.
** Listing the failed packages (*:skipped / !:failed)
        ! net-p2p/azureus (azureus-2.4.0.2)     (unknown build error)
--->  Packages processed: 0 done, 0 ignored, 0 skipped and 1 failed

Also zumindest jakarta-commons-cli will nicht zusammen mit Java 1.5
(oder hier in meinem Fall genauer jdk-1.5.0p3)
auf FreeBSD 5.5-PRERELEASE i386 bauen.
Eventuell ist es ja das, was den Azureus am funktionieren hindert,
wenn man das jakarta-commons-cli noch unter Java 1.4 gbaut hatte.
Dann zeigen sich zwar zunächt keine so ganz offensichtlichen Fehler,
und Azureus startet, nur funktioniert weder Upload noch Download.

Wie kriegt man das jetzt in eine Form,
das es für Portmaintainer nützlich ist?
Bin doch nur ein Schussel. :o


Gruß, Fusselbär


Update:
Sorry mein Fehler,
hatte vom Azureus CVSupdater ein Verzeichniss unterhalb der classes anglegt. :ugly:
Nachdem ich das dort entfernt habe, hat Azureus fertiggebaut.
Aber Uploaden oder Downloaden will er mit Java 1.5 trotzdem nicht.
 
Zuletzt bearbeitet:
Guten Tag,

die Java-Geschichte scheint aber nicht sonderlich stabil zu sein. Einige der Demos stürzen ab. Manche Web-Sites, die Java benötigen, lassen den Browser abstürzen.
Das kannte ich von Java 1.4 nicht.


Schöne Feiertage.
 
Das ist auch unter Windows manchmal ein Problem. Viele dort nutzen noch die Version 1.4 z.B. Vielleicht hängts auch damit zusammen ...
 
Zurück
Oben