If you can't read please download the document
Upload
kaniska-mandal
View
622
Download
5
Embed Size (px)
Citation preview
2. Otherwise we can start eclipse in command prompt as follows and then doCtrl+break to signal the vm.eclipse -vm binjava.exe -console -consoleLog -vmargs -verbose:class -verbose:dynload -Xms1024m -Xmx1536m -XX:MaxPermSize=128m-Xdump:heap+java:events=user,opts=CLASSIC+PHD -Xgcpolicy:optavgpaus.Another way to send stop signal to vm - cdb -p -c ".dump /ma java.dmp;q"- Where is the integer process Id of the java process.5. Time to highlight the importance of designing API and SPI using eclipsecodebase.This is an invaluable source of knowledge about evolving Eclipse API andproper usage of annotations like@noimplement, @noextend etc.Its a classic : http://www.eclipse.org/eclipse/development/java-api-evolution.html6. In order to enforce API Analysis we should refer to - http://www.eclipse-tips.com/tutorials/26-api-tooling-tutorial. After all Eclipse is meant for coding cleaninterfaces and abstract classes that communicates to users through simple annotationsand robust patterns.7. Its not a bad idea to enforce internationalization using the setting-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=error in.settings file.Fixing Int issues at the early stage prevents from wasting a good amount oftime and introducing unsolicited bugs at the time of product delivery phase.8. we should flag unused imports as errors in preference to make it a dailyhabit getting rid of unnecessary evils.9. Templating try / catch to actually catch and log an exception is aMUST ! Eclipse should fix this by default providing aexception.printStackTrace() statement. Empty catch blocks are silent killersthat remain hidden inside deeply nested api !10. The last but not the least FindBug should be part of developmentenvironment and be actively used.Well ... a bonus tip for hackers :-) ... dont forget the decompiler plugin-http://java.decompiler.free.fr/jd-eclipse/update- using 3. which you can even debug any class that essentially do not have source baseshipped with its tool !11. Remote Debugging Options :-vmargs-Xdebug-Xnoagent-Djava.compiler=NONE-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=900012. Start Eclipse in Command Prompt and see how classes are loaded13. How to generate compiler warnings for Internationalization Checking :-- java settings14. How to enforce annotations for api ?http://www.eclipse-tips.com/tutorials/26-api-tooling-tutorial-- enforce usage of @since, @noimplement annotations15. How to view OSGi dependency and search plugin dependency ?STS - http://blog.springsource.com/2009/03/05/osgi-development-tools-in-sts/http://blog.springsource.com/wp-content/uploads/2009/03/dependency-graph.png16.Use JavaRebel Eclipse Pluging for faster hot deployment. http://www.zeroturnaround.com/blog/eclipse-plugin-tutorial/17.For Server-Side application use SysDeo plugin http://www.eclipsetotale.com/tomcatPlugin.html