Comment faire pour désactiver l'exécution des avertissements en java?
Je suis à l'aide d'un fichier jar dans un programme java et il génère des alertes en cours d'exécution. Mais je ne veux pas que mon client voit ces mises en garde.
Comment puis-je désactiver ces mises en garde.
L'avertissement est comme ci-dessous:
Sep 25, 2009 10:10:33 PM com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
WARNING: Expected content type of 'application/javascript' or 'application/ecmascript' for remotely loaded JavaScript element at 'http://www.craigslist.org/js/jquery.js', but got 'application/x-javascript'.
Pourquoi votre client de voir la console en premier lieu?
Vous réparer votre bug.
Vous réparer votre bug.
OriginalL'auteur Yatendra Goel | 2009-09-25
Vous devez vous connecter pour publier un commentaire.
À partir de l'apparition du message, vous utilisez Interface htmlunit qui utilise Commons Logging pour la journalisation des messages. Sauf si vous configurez Commons Logging pour écrire dans un fichier, le journal des messages vont être enregistrés par le simple enregistreur de de Commons Logging qui écrit sur la console.
Si vous voulez faire l'erreur messages d'aller plus loin, vous pourriez adopter une ou l'autre de ces options:
/dev/null est pour Unix-like avec des Systèmes d'exploitation. Rediriger la sortie d'un processus dans Unix implique les éléments suivants: command > /dev/null . Remplacer la commande avec votre commande correctement.
Vous avez besoin d'apprendre comment configurer Commons Logging. Voir le lien de Vineet inclus.
Vous voudrez peut-être lire en.wikipedia.org/wiki/Redirection_%28computing%29
En regardant la doc de Commons Logging me fait cette déclaration: "SimpleLog envoie tous (activé) des messages de log, pour tous les enregistreurs de frappe, de Système.err." En l'absence de véritable erreur de gestion, cela va créer une fenêtre de console et affichage de l'erreur. Vous voulez probablement faire quelque chose de plus correct, à l'instar de mettre en œuvre & configurer réel journalisation même si elle ne fait rien avec les messages.
OriginalL'auteur Vineet Reynolds
Un moyen beaucoup plus facile, sans avoir à ajouter de Log4j comme une dépendance, est tout simplement de rediriger STDERR.
Que tout ce dont vous avez vraiment besoin.
Remarque: assurez-vous de réinitialiser le flux après vous avez terminé avec l'interface htmlunit:
OriginalL'auteur LanguagesNamedAfterCofee
Il suffit de copier les premières lignes à partir du lien de Vineet posté le:
Ajouter ce code quelque part dans le début du programme.
mon mauvais: log4j n'est pas livré avec interface htmlunit. Voir ma "réponse"
OriginalL'auteur Denis Tulskiy
En supposant que ce sont des messages de log, vous pouvez configurer l'enregistreur de tout écrire à la valeur null ou /dev/null
De mettre un fichier de ce genre dans le chemin d'accès peut aider
Ensuite, une bibliothèque que vous utilisez doit être.
Il serait sans doute une meilleure idée pour changer le niveau de l'enregistreur de journal seul niveau d'ERREUR en changeant le journal de tout écrire à dev/null signifie que vous avez probablement perdre aucun rapport d'erreur que vous pourriez avoir besoin pour déboguer plus tard.
La bibliothèque que vous utilisez, est à l'aide de java.util.l'exploitation forestière.* des informations de sortie.
Pouvez-vous svp me dire comment écrire tout à null ou /dev/null
OriginalL'auteur sal
Depuis l'OP me demande comment faire pour rediriger vers /dev/null:
Vous pouvez obtenir un effet similaire en appelant
System.setOut
etSystem.setErr
, en passant dans unPrintStream
qui ne fait rien avec la sortie c'est donné.C'est un terrible hack, et les réponses précédentes sont loin beaucoup plus propre.
OriginalL'auteur daveb
J'ai trouvé que l'interface htmlunit ne comprend pas le log4j mise en œuvre, seules les communes de journalisation "interface" (et les classes abstraites). Une fois que vous jetez log4j.jar sur le chemin, interface htmlunit se comporte lui-même beaucoup mieux, et honore ses configs.
OriginalL'auteur Roboprog