[Pentaho] Spoon/Kettle doesn’t start aka. “No swt-win32 in library path”


I just want to post this information as I couldn’t find anything on it in the internet. It’ll just be a “shorty” and applies to you if you’re using a 64bit Windows system, such as my Windows 2003 Server 64bit as a basis for your Pentaho BI system.

If you’re trying to start the Spoon.bat from the Pentaho Data Integration package (aka. Kettle), and it doesn’t start you’ll be able to get additional error messages by editing it (right click, and then Edit).

Now at the very bottom you should find something like this:

start javaw %OPT% org.pentaho.di.ui.spoon.Spoon %_cmdline%

The first thing we want to do is to change javaw into java. Now while they are nearly totally identical, java is in possession of a console, while javaw is not. Now that gives java the opportunity to actually use the console for messages – you could say that java is the verbose version of javaw.

Now, we have the error messages, but as we still have the keyword “start” in front of java, it’ll be written in a new console and not the one used by the bat file. We’ll change that by removing “start”. Now the last thing to do is to make the bat file pause, when it’s finished, otherwise it’ll just close the console as soon as it reaches it’s end (regardless of any messages that we may still want to read).

This is what our edited version looks like:

java %OPT% org.pentaho.di.ui.spoon.Spoon %_cmdline%
pause

Now if you’ve get this error message, you might just ran into the same problem that I did:

Spoon – Fatal error : java.lang UnsatisfiedLinkError: no swt-win32-3346 or swt-win32 in swt.library.path, java.library.path or the jar file

This is followed by a call stack and the exception that is thrown. But anyhow that’s just blurr in this case, as we assume that the code is correct, it’s just something with our environment.

And in fact it is. As the server I requested is a 64bit machine, the IT support delivered it to me with a 64bit version of Java, installed in the standard path C:Program FilesJavajre1.5.0_21. If your CLASSPATH variable points there (you can easily check by calling

cmd > echo %classpath%

in CMD, without having to meddle around with all that menus Windows offeres) you’d rather want it to use the 32bit version, that is usually found at C:Program Files (x86)Javajre1.5.0_21. If you don’t have that directory, you’ll need to install the 32bit version of Java first.

Oh, and make sure, that it is the Java 5.0 and not the 6.0, as that is not yet fully supported by Pentaho.

Advertisements

6 thoughts on “[Pentaho] Spoon/Kettle doesn’t start aka. “No swt-win32 in library path”

  1. Better than “downgrading Java to 32bit”, is to
    * download and set up JDK/JRE _64bit_
    * download and set up pdi-ce-stable-2.3.2 “as usual”
    * download swt-3.5.2-win32-win32-x86_64.zip from the eclipse site
    * extract swt.jar from swt-3.5.2-win32-win32-x86_64.zip archive
    * replace the swt.jar file in %pdi-home%libswtwin32 with the extracted version

    Tried under Windows XP x64 and Windows 7 Ultimate x64. See no reason why it should not work under any other build of x64 windows.

  2. Hey,

    This solution saved me of a big problem. Thanks. Could I translate and put it in my site? My site is all about open source technologies and has a lot of information about kettle in Portuguese.

    Thanks

    Ademar Gomes

    • Thanks for the comment. Of course you may use this. As an open source fan I love to share my knowledge – I mean, if others didn’t than I wouldn’t be where I am, would I?

      I’d be delighted, of course, if you’ll refer to my entry – but that’s not mandatory.

  3. Pingback: Blog-Steckbrief: Wer seid ihr? | ~ PygoscelisPapua ~

Please comment. I really enjoy your thoughts!

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s