You are here

SVN Subclipse crashed my Eclipse

Blog Terms: 

Few days ago when I was working with Eclipse (3.2), without any premonition, my eclispe crashed. It only showed me one error windows with unuseful message. Then my nightmare began. Everytime I restart Eclipse, it just crashed with the error windows and I have checked the logs, only found some strange message, does not tell me where is wrong. That is crazy, I did nothing why it crashed. And I tried Eclipse 3.3, the same problem.

After hours working, i found one problem, Eclipse crashed when it building the projects. I tried to move all the svn folders and files in my project, Eclispe stopped crashing. So I uninstall my Subclipse and everything got to be fine. But my work must use SVN, that puzzled me a lot.

At last I found the solution one subclipse website:

As soon as I do something with Subclipse on Windows, Eclipse just crashes. Why does this happen?

This is a fairly recent problem that is caused by a DLL incompatibility. Subversion uses a library called APR
or the Apache Portable Runtime. This library has a component called APR-ICONV which is used for translating characters
in path and file names to/from UTF8 and the local character set. The release of Apache 2.2 brought with it new releases
of APR and APR-ICONV and these are not binary compatible with previous releases. Subclipse ships with the Apache 2.0
version of these libraries. This crash occurs if you install an application that installs the Apache 2.2 version of
these libraries AND ALSO sets the APR_ICONV_PATH environment variable to a path that contains the Apache 2.2
version of the APR-ICONV .so objects.

The fix is actually simple. Change the name of the environment variable to APR_ICONV1_PATH. The Apache 2.2
library will look for this environment variable name first, and only fallback to the older name if it is not found.
You can safely have an APR_ICONV_PATH environment variable pointing to the Apache 2.0 version of these libraries
and the APR_ICONV1_PATH environment variable pointing to the Apache 2.2 version.

Subversion 1.5 has resolved this problem by discontinuing the use of APR-ICONV. Instead, Subversion will use
translation routines that are provided by the Windows operating system.


I just remembered that I have installed other SVN client(TortoiseSVN ) in my windows system one week before, for my PHP project. I did as described here, changed the name of environment variable to APR_ICONV1_PATH and installed Subclipse again, hummmmm, everything go back to work.