Re: [ostorybook-dev] SHEF point 10

[ Thread Index | Date Index | More lists.tuxfamily.org/ostorybook-dev Archives ]


Je pense que le souci est le suivant :
Ton code de SourceEditor importe la classe RSyntaxTextArea, donc la classe SourceEditor  ne se charge pas si le classLoader ne trouve pas RSyntaxTextArea.

Donc cela va être un peu plus compliqué. Le mieux serait d'avoir une vraie API (donc une classe d'interface) qui serait toujours présente, mais instanciée seulement dans un le jar optionnel. Dans ce cas tu aurais quelque chose comme :

MyInterface instance = null;
try {
    instance = (MyInstance)ClassLoader.getSystemClassLoader().loadClass("ma.classe.a.Charger");
    // OK !
} catch (ClassNotFoundException e){
    // NOT OK !
}

if (instance != null) {
   instance.setSyntaxEditingStyle(...);
}

Le 02/01/2021 à 20:12, oStorybook a écrit :
Le 02/01/2021 à 18:14, Jean Rébillat a écrit :
Pour savoir juste si l'API est dans le class path, il suffit , dans le code Java, de tenter de charger la classe:

try {
ClassLoader.getSystemClassLoader().loadClass("ma.classe.a.Charger");
     // OK !
} catch (ClassNotFoundException e){
     // NOT OK !
}
Non rien à faire. Si je copie le SHEF.jar ailleurs, avec un
lib/jtidy-1.0.2.jar j'ai quand même une exception. La partie du code est
dans SourceEditor lignes 65 et suivantes. Lors du plantage la trace ne
révèle même pas l'activation du SourceEditor.

J'ai fait un push avec le code modifié.



--
oStorybook5 dev


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/