Correctifs OpenJDK-8 / Oracle JDK 8 pour Ubuntu

8

Existe-t-il une version corrigée d'OpenJDK-8 ou d'Oracle JDK 8 pour Ubuntu 14.10 qui corrige les polices moches dans les applications Java (produits Jetbrains, Netbeans, etc.)?

J'avais précédemment installé une version corrigée d'OpenJDK7 pour Ubuntu 14.04 dans cet article, mais elle ne semble pas être disponible pour 14.10. Je n'ai pas non plus pu trouver de version corrigée pour OpenJDK8 / OracleJDK8.

S'il y a une version corrigée ou un correctif pour OpenJDK8 / OracleJDK8 que je pourrais installer, j'apprécierais vraiment si quelqu'un peut le signaler.

Je vous remercie.

Deepal
la source
Les versions modernes d'IntelliJ apportent leur propre JVM. Très probablement capable de gérer des choses comme ça.
Thorbjørn Ravn Andersen

Réponses:

9

Après avoir lu divers didacticiels et essayé un tas de correctifs, j'ai trouvé un moyen qui fonctionne parfaitement.

Tout d'abord, téléchargez JDK 8 depuis Oracle et exécutez les lignes suivantes dans le terminal:

cd Downloads
tar -xvf jdk-8u25-linux-x64.tar.gz
rm jdk-8u25-linux-x64.tar.gz
sudo mkdir -p /usr/lib/jvm/
sudo mv jdk1.8.0_25 /usr/lib/jvm/

Téléchargez maintenant le correctif de police JDK (avec la permission d' Urshulyak Yaroslav ) en exécutant ce qui suit:

cd ~/Downloads
wget http://urshulyak.com/jdk-8u5-tuxjdk-b08.tar.gz
tar -xvf jdk-8u5-tuxjdk-b08.tar.gz
sudo mv jdk-8u5-tuxjdk-b08 /usr/lib/jvm
rm jdk-8u5-tuxjdk-b08.tar.gz

Cela va extraire le zip téléchargé et le déplacer vers / usr / lib / jvm /. Exécutez maintenant ce qui suit dans le terminal:

cd ~
sudo gedit .bashrc

Ajoutez ensuite les lignes suivantes tout en bas du fichier bashrc.

JAVA_HOME=/usr/lib/jvm/jdk1.8.0_25/
export JAVA_HOME

Enregistrez-le puis générez l'idée.sh. (L'emplacement de votre script peut être différent)

gedit /home/USER/Downloads/idea/bin/idea.sh

Tout en bas du script, remplacez la ou les lignes de l'instruction While Do en bas par ces deux lignes:

eval "/usr/lib/jvm/jdk-8u5-tuxjdk-b08/bin/java" $ALL_JVM_ARGS -Djb.restart.code=88 $MAIN_CLASS_NAME "$@"
test $? -ne 88 && break

Enregistrez-le puis ouvrez IntelliJ, les polices devraient fonctionner et vous utiliserez Oracle JDK 8 pour le développement. Vous devrez probablement modifier les paramètres du projet et configurer à nouveau votre JDK, mais assurez-vous d'utiliser le JDK réel et non le correctif de police.

Ce correctif fonctionne également avec CLion , Android Studio et PyCharm .

Ces instructions supposent que la version JDK était 1.8.0_25, les noms de fichier / chemin changeront pour les versions futures.


la source
Merci pour la réponse détaillée. J'ai essayé votre solution, mais mes polices sont devenues plus grandes et plus audacieuses. Je pouvais diminuer la taille de la police, mais je ne pouvais pas changer les polices en gras en normales.
Deepal
Ouais, la taille est augmentée à 14 (j'ai changé la mienne à 11) mais mes polices n'étaient pas en gras? Je suppose que vous avez essayé les autres polices pour voir si elles étaient toujours en gras?
Oui, toutes les polices ne sont pas en gras. La police que j'utilise actuellement est devenue en gras. Je pense que je devrai vivre avec ça. Existe-t-il un moyen d'appliquer cette solution à toutes les applications java autres que la modification de leurs exécutables? Je veux aussi jar des fichiers? Je ne peux pas utiliser ce jdk patché comme jdk par défaut? N'est-ce pas un jdk complet?
Deepal
1
Désolé, je ne peux pas aider avec les polices en gras. Vous pouvez peut-être essayer de télécharger une autre copie de la police, qui vaut le coup si cela vous dérange autant. Vous pouvez essayer de jouer avec le correctif de police, j'ai eu des problèmes à l'utiliser comme JDK, vous pouvez essayer de télécharger l'openJDK complet et de fusionner les deux, cela pourrait fonctionner.
3
@Deepal Assurez-vous que vous définissez également export _JAVA_OPTIONS="-Dawt.useSystemAAFontSettings=lcd -Dsun.java2d.xrender=true"dans votre bashrc
Salem
1

Pour compléter la réponse de DanielSteward:

Malheureusement tuxjdkpour l'aspect et la convivialité de GTK, le jeu de polices est utilisé dans gtkrc actuellement utilisé. Mais la plupart des thèmes n'y définissent aucune police. Par conséquent, les netbeans utiliseront Arial 15 en gras comme police d'interface utilisateur.

Pour corriger cela, créez gtkrc uniquement pour les netbeans avec une police fixe et dites à netbeans d'utiliser ce fichier.

J'ai préparé un lanceur spécial qui le fait semi-automatiquement:

#! / bin / bash

### Variables personnalisables: ###

# Chemin où Netbeans a été installé
NETBEANS_PATH = $ {NETBEANS_PATH: - ~ / opt / netbeans-dev-2015-06-04} / bin / netbeans
# Nom de l'environnement de bureau à partir duquel utiliser le style
USED_DE = $ {USED_DE: -mate}
# Tuxjdk semble rendre les polices d'interface utilisateur trop grandes, utilisez donc cette valeur pour les diminuer
FONT_SUBTRAHENT = $ {FONT_SUBTRAHENT: -3}

###############################

fonction remQuotes () {
  echo "$ {@ // \ '/}"
}

fonction diminutionFontSize () {
  subtrahend local = 1 $; décalage
  args local = "$ @"
  echo $ {args // [0-9] /} $ (($ {args // [! 0-9] /} - $ subtrahend))
}

theme = $ (remQuotes `gsettings get org. $ {USED_DE} .interface gtk-theme`)
font = $ (remQuotes `gsettings get org. $ {USED_DE} .interface font-name`)
font = $ (diminutionFontSize $ FONT_SUBTRAHENT $ police)

themeDirs = $ (trouver ~ / .themes / / usr / share / themes / -type d -name "$ {theme}")
gtkRcPath = ""
pour dir dans "$ themeDirs"; faire
  if [[-f "$ dir / gtk-2.0 / gtkrc"]]; puis
    gtkRcPath = "$ dir / gtk-2.0 / gtkrc"
    Pause;
  Fi
terminé

if [["$ gtkRcPath" == ""]]; puis
  echo "Thème introuvable"> / dev / stderr
  ./$NETBEANS_PATH $ @
Fi

cat $ HOME / .netbeans / .gtkrc-2.0
inclure "$ gtkRcPath"

style "user-font" {
    font_name = "$ font"
}

widget_class "*" style "user-font"

gtk-font-name = "$ font"

EOF

GTK2_RC_FILES = ~ / .netbeans / .gtkrc-2.0 $ NETBEANS_PATH $ @

Cela lira les paramètres de votre thème et créera un faux thème uniquement pour les netbeans. Vous devez ajuster NETBEANS_PATHet USED_DEvariables à votre environnement.

p2rkw
la source
0

J'ai construit Openjdk 8u40 par moi-même et appliqué des correctifs tuxjdk. De plus, je devais créer un fichier appelé local.confdans /etc/fonts/au fontmap de remplacement java pour ses polices logiques aiment Dialog, Monospacedetc. Après cela, les applications basées sur Swing beaucoup amélioré. Jetez un œil ICI .

vbsessa
la source
0

Pour le moment, il n'y a que des packages rpm pour tuxjdk: http://download.opensuse.org/repositories/home:/TheIndifferent:/tuxjdk/

J'ai besoin d'un peu plus de temps pour en savoir plus sur l'empaquetage Debian et préparer les paquets appropriés, ainsi que pour documenter quelques fonctionnalités intéressantes de la version 03 de tuxjdk. Alors restez à l'écoute et veuillez signaler tous les problèmes que vous rencontrez avec tuxjdk à https://github.com/TheIndifferent/tuxjdk , donc je pourrai les reproduire et (espérons-le) les corriger.

TheIndifferent
la source
0

En fait, vous n'avez pas besoin de vous soucier de la modification idea.sh, qui est volatile dans les mises à jour. Il existe un fichier de configuration spécifique à l'utilisateur ~/.IntelliJIdea2016.1/config/idea.jdk(les noms changent en conséquence), qui stocke le JDK de démarrage.

Références officielles:

Colliot
la source