No es necesario declarar las excepciones comprobadas en la cláusula throws o manejarlas en try/catch block en scala es la característica que me encanta. Pero puede ser un problema cuando se debe manejar una excepción pero se ignoró. Estoy buscando herramientas (tal vez el indicador/plugin del compilador) para encontrar métodos que ignoraron las excepciones marcadas.¿Cómo encontrar excepciones que fueron "ignoradas"?
6
A
Respuesta
0
Una opción es atrapar la excepción en un nivel muy alto de su aplicación (La parte superior sería main
-metodo).
Otra opción sería utilizar un UncaughtExceptionHandler
(si se encuentra en una JVM):
object MyUncaughtExceptionHandler extends Thread.UncaughtExceptionHandler {
def uncaughtException(thread: Thread, throwable: Throwable) {
println("Something bad happened!")
}
}
val t = new Thread(new Runnable {
override def run() {
null.toString
}
});
t.setUncaughtExceptionHandler(MyUncaughtExceptionHandler)
t.start()
0
yo sepa, no hay tales herramientas, sin embargo, una técnica que he utilizado con éxito es instalar simplemente un a -punto de ruptura de punto de inflexión en su IDE (IntelliJ o Eclipse) para java.lang.Throwable que pausará la ejecución en el punto de lanzamiento de cada excepción java (o error) mientras el programa se ejecuta y luego seguir presionando "reproducir" para ver todos (al menos en la ruta de ejecución que le interese)
Cheers ...
Cuestiones relacionadas
- 1. encontrar cuál de los tweets de un usuario fueron favoritos
- 2. Anotaciones de Spring @Transactional ignoradas
- 3. Cerrar ventanas que no fueron abiertas por script usando javascript
- 4. Moq - verificar que no hay métodos fueron llamados
- 5. Grandes sitios web que fueron desarrollados usando Ember.js
- 6. javax.print.attribute.PrintRequestAttributeSet opciones ignoradas por la Impresora
- 7. ¿cómo puedo encontrar excepciones nativas en una pila x64?
- 8. ¿Cómo puedo detener el incremento automático en las inserciones ignoradas que no hacen cambios en MySQL?
- 9. ¿Cómo decirle a NLog que registre excepciones?
- 10. ¿Por qué mis propiedades CSS están siendo anuladas/ignoradas?
- 11. ¿Cómo serializar las clases que no fueron diseñadas para ser serializadas?
- 12. ¿cómo identifico los archivos/directorios que fueron agregados o eliminados en una confirmación de git?
- 13. Git: ¿Cómo evitar el commit de archivos que fueron modificados solo para propósitos de depuración?
- 14. Cómo manejar excepciones DOP
- 15. Buscar artículos de trabajo que fueron asignados a X en los últimos 30 días
- 16. dónde coger excepciones que devuelve Callable.call()
- 17. En TFS, ¿cómo extraigo todos los elementos que me fueron asignados entre ciertas fechas en el pasado?
- 18. referencias "attributeGroup" ignoradas por Delphi WSDL Import Tool
- 19. excepciones que cogen en un hilo .NET
- 20. Cómo detectar excepciones en FutureTask
- 21. ¿Cómo evito que Vista mate mi programa con excepciones?
- 22. ¿Cómo manejar las excepciones de WinRT que resultan en Excepción?
- 23. ¿Cómo evito que las excepciones dañen mi cadena de delegados?
- 24. ¿Cómo puedo evitar que QuickCheck capture todas las excepciones?
- 25. ¿Cómo pueden incluirse los métodos que arrojan excepciones?
- 26. ¿Cómo hacer que STL arroje excepciones en lugar de aserciones?
- 27. ¿Cómo escribir el atributo que detecta excepciones y elimina stacktrace?
- 28. Cómo evitar que los bots publiquen y causen excepciones
- 29. ¿Cómo puedo encontrar una lista de todas las excepciones que arroja una función de biblioteca dada en Python?
- 30. Cómo detectar excepciones
Hubo un debate sobre la lista de debate de scala y Martin Odersky dijo esto: http://groups.google.com/group/scala-debate/msg/99369ca6c4959894 –