Difference between revisions of "Java home"
(→Links) |
(→Thread Dumps) |
||
(One intermediate revision by the same user not shown) | |||
Zeile 50: | Zeile 50: | ||
*http://rfeest.blogspot.com/2008/02/thread-dumps-erzeugen.html |
*http://rfeest.blogspot.com/2008/02/thread-dumps-erzeugen.html |
||
*[https://tda.dev.java.net/ Thread Dump Analyzer] |
*[https://tda.dev.java.net/ Thread Dump Analyzer] |
||
+ | *[http://www.tagtraum.com/gcviewer.html free open source tool to visualize garbage collector data] |
||
+ | *[https://visualvm.dev.java.net/ All-in-One Java Troubleshooting Tool] |
||
== Exceptions == |
== Exceptions == |
Latest revision as of 19:40, 16 Februar 2009
Inhaltsverzeichnis
Runtime Environments
Links
Tips and Tricks
Rules Engines
Overview
Business Rules Management Systems (BRMS), decision tables (Entscheidungstabellen)
Links
- information
- standards
- implementations
JUnit
Version Info
Manchmal möchte man die Version einer junit-JAR herausbekommen. Das manifest enthält keine Versionskennzeichnung und die Klasse Version besitzt keine Main-Methode. Also braucht man eine kleine Klasse, die die Version auslesen kann.
import junit.runner.Version; public class JUnitVersion { public static void main(String[] args) { System.out.println(Version.id()); } }
Thread Dumps
Zum Erzeugen eines Thread Dumps muss man seit JDK 1.5 kein SIGQUIT (kill -3 ...) an die JavaVM schicken, sondern es gibt ein eigenes Kommando daf+r
jstack <pid> >stack.txt
Links
- http://rfeest.blogspot.com/2008/02/thread-dumps-erzeugen.html
- Thread Dump Analyzer
- free open source tool to visualize garbage collector data
- All-in-One Java Troubleshooting Tool
Exceptions
Links
Klonen von Objekten
Um bitweise Kopien von Objekten zu erzeugen, kann man die clone-Methode der Klasse Object verwenden. Dafür muss die zu klonende Klasse das Interface Clonable implementieren.
public class MyClass implements Cloneable { }
/** Objekt clonen (unter Verwendung von Object.clone()). * @see java.lang.Object#clone() * @return Clone oder null, falls Object.clone() CloneNotSupportedException lieferte */ public MyClass clone() { try { return (MyClass) super.clone(); } catch (CloneNotSupportedException e) { return null; } }