Hello la team developpez.net,
Je travaille avec Talend Open Studio sur un projet en java et un job génère une méthode un peu trop importante et entraîne l'erreur de compilation suivante:
The code of method tRunJob_1Process(Map<String,Object>) is exceeding the 65535 bytes limit
J'ai commencé à taper dans les templates de génération de code afin de factoriser des lignes dans des méthodes, cela m'a permis de repousser le problème, mais évidemment en continuant à développer le job, l'erreur est réapparue.
Donc aujourd'hui je cherche des pistes d'amélioration pour savoir lesquelles peuvent être efficaces. Est-ce que la taille des noms de variable peut influer sur la taille de la méthode compilée?
J'ai notamment le bloc:
1 2 3 4
| if (valueMap_tFileOutputMSXML_1.get("CAR_SERIES") != null) {
nestXMLTool_tFileOutputMSXML_1.setText(group0__0_tFileOutputMSXML_1,
valueMap_tFileOutputMSXML_1.get("CAR_SERIES"));
} |
Qui se répète plus de 200 fois dans avec des chaînes différentes. Malgré le peu de lignes générées serait-il avantageux de créer une méthode du type:
1 2 3 4 5 6
|
private void winSpace(String key, Element elem){
if (valueMap_tFileOutputMSXML_1.get(key) != null) {
nestXMLTool_tFileOutputMSXML_1.setText(elem,
valueMap_tFileOutputMSXML_1.get(key));
} |
?
(Evidemment c'est tapé en live et pas forcément exempt d'erreurs)
Partager