
Pour déboguer le serveur SMTP de Domino, depuis la console, faire ...
Par défaut les logs Java sont affichés sur deux lignes (la 1er contient la date, la 2e le type et le contenu) :
sept. 28, 2020 4:35:04 PM org.apache.karaf.main.Main launch
INFOS: All initial bundles installed and set to start
Dans les propriétés globales de la JVM Java (option : -DmaVaraible=maValeur), la variable « java.util.logging.SimpleFormatter.format » permet de configurer le formatage des logs.
Pour afficher les logs sur une seule ligne, utilisez le paramétrage suivant :
"%1$tFT%1$tTZ [%4$s] [%2$s] %5$s%6$s%n"
Par exemple pour lancer l’application mon-app.jar:
java '-Djava.util.logging.SimpleFormatter.format=%1$tFT%1$tTZ [%4$s] [%2$s] %5$s%6$s%n' -jar mon-app.jar
Si vous voulez un format plus lisible pour la date (avec time zone) utilisez le format suivant « %1$s [%4$s] [%2$s] %5$s%6$s%n« .
Ce qui donne pour par exemple :
2020-10-18T02:28:50Z[GMT] [INFO] [org.prodix.myapp] app starting …
Source de l’article : https://rmannibucau.metawerx.net/post/jul-production-ready-pattern-with-simpleformatter
Lorsque vous êtes sur un champ de login Firefox au travers de Lockwise propose tous les logins de tous les sites en plus de ceux du site lui-même.
Cela génère du bruit pour rien et cela ne sert à rien en plus d’être parasitaire et énervant.
Pour désactiver cette fonctionnalité :
Sous Aurelia lorsque vous naviguez ou chargez une ressource il est bien de faire patienter l’utilisateur avec une animation bloquant l’interface.
Le composant « nprogresse » permet de faire cela.
Installer « nprogress » dans votre projet Aurelia
npm install nprogress --save
Dans le dossier « src/resources/elements » créez le fichier « loading-indicator.js » avec le script suivant :
import * as nprogress from 'nprogress'; import {bindable, noView} from 'aurelia-framework'; import 'nprogress/nprogress.css'; @noView export class LoadingIndicator { @bindable loading = false; loadingChanged(newValue) { if (newValue) { nprogress.start(); } else { nprogress.done(); } } }
Ce code crée un composant HTML « loading-indicator » non relié à une vue (de même non), mais important une feuille de style « nprogress/nprogress.css ».
Définissez le plug-in dans le fichier « resources/index.js » en ajoutant :
import {PLATFORM} from 'aurelia-framework'; export function configure(config) { config.globalResources([PLATFORM.moduleName('./elements/loading-indicator')]); }
Positionner le composant HTML de nprogress dans la page HTML principale « App.html » en ajoutant le code suivant :
<loading-indicator loading.bind="router.isNavigating || context.isRequesting"></loading-indicator>
Pour activer ce composant il suffit de mettre a « true » la variable de « context.isRequesting », on d’appeler la méthode « nprogress.start() ». Une barre bleue de progression s’affichera en haut.
Pour le cacher, appelez-la méthode « nprogress.stop(); »
Vous pouvez changer le style de la barre de progression en ajout le code suivant dans votre fichier style CSS principale :
#nprogress { display: block; position: fixed; z-index: 1030; left: 0; top: 0; right: 0; bottom: 0; opacity: 0.8; filter: alpha(opacity=80); /* For IE8 and earlier */ background-color: #fff; } #nprogress .bar { height : 8px; } #nprogress .spinner { display: block; position: fixed; z-index: 1031; top: 15px; right: 50%; }
Il existe plusieurs VM Java pour différent système d’exploitation (voir la liste si dessous).
Dans ma recherche de binaire JVM exploitable en production, sur des systèmes Windows, Mac, Linux, et pouvant être packager dans un kit d’installation j’ai référencé 3 JVM :
Toutes sont basées sur OpenJDK et supportent les versions 8 et 11 de Java.
Dans cette liste, la version Hotspot d’Oracle à deux URLs de téléchargement adoptopenjdk et java.net. Le binaire qui se trouve chez Oracle (java.net) ne permet plus d’être package dans un kit d’installation et sa mise à jour nécessite un accord commercial avec Oracle (payant).
Il reste donc deux sites web ou trouvera un binaire pour Windows, Linux, Mac :
Si vous votre cible est Linux, je vous conseille d’étudier l’usage de Grall VM CE qui génère un exécutable (et donc, accélère les lancements)
Si votre cible est un mini-ordinateur (ex Raspberry PI) ou un mini soc (Arduino , ATmega328p) , de regarder du côté de Haiku
Pour plus de détail, regarder la liste si dessous.
Nom | Sytème d’exploitation | Particularités |
Amazon Corretto |
|
Implémentation Java par Amazone. Utilisé sur ses serveurs AW cloud
Licence : « Amazon Corretto peut être téléchargé et utilisé gratuitement. Il n’y a aucune restriction ou fonctionnalité payante supplémentaire. » Web : https://aws.amazon.com/fr/corretto/ |
Azul Zulu |
|
Libre à télécharger pour utilisation.
A priori libre pour projet OpenSource, sinon payant. Si vous voulez la fournir dans un « objet » c’est payant 😉 Mais c’est une des rares JVM à pouvoir faire du temps réel. Web : https://www.azul.com/downloads/zulu/#mac |
Bck2Brwsr | Navigateur Internet (Moderne et IE 10+) | Convertie le Byte code Java en JavaScript
Web : http://wiki.apidesign.org/wiki/Bck2Brwsr |
CACAO | Étude académique
Utilise GNU classpath Licence : GPL 2 Web : http://www.cacaojvm.org/ |
|
Codename One / ParparVM |
|
JVM fournit par Codename pour le portage d’application Java
https://github.com/codenameone/CodenameOne/tree/master/vm |
DoppioJVM |
|
JVM (Java 8) écrite en JavaScript pour fonctionner sur les navigateurs Internet
web : https://plasma-umass.org/doppio-demo/ |
Eclipse OpenJ9 |
|
Développé par IBM et Apache.
Licence : Apache 2 web : https://www.eclipse.org/openj9/ https://adoptopenjdk.net |
GraalVM CE |
|
VM polyglotte (Java, JavaScript, Scala, Kotlin, Clojure, NodeJS, Ruby, R, Python, ..) qui compile l code et donne un exécutable sous Linux ou MaOS
Web : https://www.graalvm.org/ |
HaikuVM |
|
Rapide
Très peu gourmande en mémoire Acsés directe à la mémoire et au x entrés/sortie (IO) Fonction C/C++ et bibliothèque directement appelable au travers d’annotation @NativeCFunction / @NativeCppFunction Site : https://sourceforge.net/projects/haiku-vm/ |
HotSpot |
|
La version Oracle de la JVM Java.
web : http://openjdk.java.net/groups/hotspot/ |
Jamiga |
|
VM Java pour Amiga.
Licence : GPL Web : https://github.com/jaokim/jamiga-jamvm |
JamVM |
|
JVM désigné pour être compacte
Dernière version date de 30 juillet 2016 supporte Java 6, 7, 8 Utilise le classpath de GNU Licence : GPL Web : http://jamvm.sourceforge.net/ |
Jelatine JVM |
|
JVM de Java 2 Micro Edition
Web : https://sourceforge.net/projects/jelatine/ |
Jikes RVM |
|
JVM désigné pour l’étude et la recherche de VM.
Licence : Eclipse Public License |
JVM.go | JVM Java écrit en go
Web : https://github.com/zxh0/jvm.go |
|
leJOS |
|
JVM Java dédié à Lego MindsStorms
Web : http://www.lejos.org/ |
Maxine |
|
Licence : GPL 2
Web : https://github.com/beehive-lab/Maxine-VM |
Multi-OS Engine | MacOS | Portez vos applications Android ou écrivez des applications Java pour Mac
Web : https://multi-os-engine.org/ |
Redhat | Windows | Port de OpenJDK par RedHat |
RopeVM | JVM de projet de recherche Chinois.
Développer par des Chinois. Web (chinois) : https://github.com/duyanning/ropevm |
|
SAP | Windows
Linux
MacOS |
JDK et JRE développé par SAP
|
Étude sur les différences des JVM: https://en.wikipedia.org/wiki/Comparison_of_Java_virtual_machines
Liste des JVM passés et présente : https://en.wikipedia.org/wiki/List_of_Java_virtual_machines
Dans cet article vous trouverez la liste des logiciels libres à posséder obligatoirement sous Windows.
Je vais la mettre à jour régulièrement pour qu'elle toujours le dernier numéro de version du logiciel.
Les mises à jour récentes sont indiquées sur fond orange
Dernière Mise à jour de cet article : 11/07/2018