Sweet Home 3D doesn't start

I've recently installed Ubuntu 11.04 and downloaded the "Sweet Home 3D" program from the Software Center. It installed and it shows up as one of the applications when I search for it, but I cannot get it to start at all. Any idea how I can do this or if this is a known issue?

I am using a Dell Studio 15 1558 laptop and the fglrx driver for my ATI graphics card. But I have a feeling that this problem has nothing to do with hardware or drivers.

Edit: This is what I get when I type 'sweethome3d' in the terminal:

zeiger@ubuntu:~$ sweethome3d
[warning] /usr/bin/sweethome3d: Unable to locate /usr/lib/jvm/java-6-sun/jre/lib/javaws.jar in /usr/share/java
Exception in thread "main" java.lang.NoClassDefFoundError: javax/jnlp/UnavailableServiceException
Caused by: java.lang.ClassNotFoundException: javax.jnlp.UnavailableServiceException
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: com.eteks.sweethome3d.SweetHome3D. Program will exit.
zeiger@ubuntu:~$

And I installed SweetHome3d using the Ubuntu Software Center.


Install sun-java6-bin from the Software Centre.

I have Sweet Home installed. When I remove sun-java, SH doesn't launch. When I reinstall it, SH launches.


The problem seems to be that the launch script located in /usr/share/sweethome3d/sweethome3d.sh looks for jre installed on a hardcoded path to "/usr/lib/jvm/java-6-sun".

To fix it:

  1. On Ubuntu, open terminal and run:

    sudo gedit /usr/share/sweethome3d/sweethome3d.sh

  2. Change the line:
    find_jars /usr/lib/jvm/java-6-sun/jre/lib/javaws.jar
    to
    find_jars $(readlink -f /usr/bin/java | sed "s:bin/java::")/lib/javaws.jar

  3. Save the script.
  4. Try to run the app!