jeudi 23 janvier 2014

CreateProcess error=87

Aujourd'hui j'ai eu une erreur Éclipse lors du lancement d'un test JUnit 4. 

"Cannot run program ... Error=87"

Il s'agit d'un problème connu sous Windows car sa ligne de commande n'accepte pas les commandes d'une longueure supérieur à 8191 caractères.

Dans un projet avec, par exemple, de nombreux imports, d'un répo MAVEN, d'autres projets, etc. cela pose un problème. 

Il y a plusieurs solutions mais le but est de réduire la taille du CLASSPATH passé en paramètre à la ligne de commande par éclipse. 

Pour mon cas j'ai préféré laisser la main à MAVEN pour lancer mes tests JUnit, histoire de ne pas modifier la configuration de mon poste de travail. 

Désavantages : sans lancer comme un run JUnit sous éclipse, on a pas le droit à la jolie interface graphique du plugin JUnit éclipse. De plus par défaut tous les tests du projet sont déroulés. 

Avantage : pas de souci de longueur de ligne de commande sous Windows. 

CD {chemin répertoire projet}
mvn test

Réalisable aussi sous éclipse : run as MAVEN build. 

Bien sur ceci pour un projet MAVEN. 

mardi 21 janvier 2014

Protéger une apostrophe en SQL

Lorsqu'on souhaite saisir une apostrophe dans une chaîne de caractères SQL il suffit de la doubler : " '' " au lieu de " ' ". 

Par exemple :
INSERT INTO LIBELLES (ID,LABEL) VALUES (1,"un texte avec l''apostrophe doublé");