Task #2738
Improve JavaFX libraries integration in TXM
Statut: | New | Début: | 23/01/2020 | |
---|---|---|---|---|
Priorité: | Normal | Echéance: | ||
Assigné à: | - | % réalisé: | 0% |
|
Catégorie: | Development | Temps passé: | - | |
Version cible: | TXM 0.8.4 | Temps estimé: | 70.00 heures |
Description
Current state: #2698.
!! JavaFX is no more included in Java since version 9. It must be included in the jre when built with a jdk
Also updating JavaFX version to its last version we must use a newer version of Java -> this will break many old libraries.
JavaFX library is loaded when "-Dosgi.parentClassloader=ext" is set in the product launcher options
note: the "-Dosgi.parentClassloader=ext" option force us to publish TXM with an installer
Note 1:
We do not need to publish a new installer to modify launcher arguments but should look at the P2.inf mechanism.
P2 offers a way for bundles to execute some commands at different stage of an installation or an uninstallation.
Commands can for example, change file rights, change JVM path, add/remove JVM launcher args, copy/delete files, etc.
See: https://help.eclipse.org/2019-12/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/p2_actions_touchpoints.html
https://wiki.eclipse.org/Equinox/p2/Engine
Note 2:
Add a p2.inf file to the root of org.txm.libs.javafx.feature containing the following touchpoint actions:
instructions.configure = org.eclipse.equinox.p2.touchpoint.eclipse.addJvmArg(jvmArg:-Dorg.osgi.framework.bundle.parent=ext); instructions.unconfigure = org.eclipse.equinox.p2.touchpoint.eclipse.removeJVMArg(jvmArg:-Dorg.osgi.framework.bundle.parent=ext);
Historique
#1 Mis à jour par Matthieu Decorde il y a plus de 4 ans
- Description mis à jour (diff)
- Version cible changé de TXM 0.8.2 à TXM 0.8.4
- Temps estimé mis à 70.00