Ask Ubuntu is a question and answer site for Ubuntu users and developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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 Method)
    at java.lang.ClassLoader.loadClass(
    at sun.misc.Launcher$AppClassLoader.loadClass(
    at java.lang.ClassLoader.loadClass(
Could not find the main class: com.eteks.sweethome3d.SweetHome3D. Program will exit.

And I installed SweetHome3d using the Ubuntu Software Center.

share|improve this question
Can you try to start the program from the terminal? This will likely help you track down where the software is breaking. – Marco Ceppi Jun 14 '11 at 14:04
I think that incompatibility with FGLRX could be a reason, but I am just guessing. As Marco suggested, run Terminal, execute sweethome3d and show us output (possibly using ) - if there's any. – jnv Jun 14 '11 at 14:42
The console idea is great, but how have you installed it?. Sweet Home 3D packs it's own jre, I had to grant it run privileges to be able to launch it. – Javier Rivera Jun 14 '11 at 17:05
@MarcoCeppi @jnv @JavierRivera I have updated the question with the information required – zeiger Jun 14 '11 at 20:21
up vote 9 down vote accepted

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.

share|improve this answer
Thanks, this worked! – zeiger Jun 14 '11 at 23:10

The problem seems to be that the launch script located in /usr/share/sweethome3d/ 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/

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

  3. Save the script.
  4. Try to run the app!
share|improve this answer


  1. Downloaded jre-6u27-linux-i586.bin and install it.
  2. As root, copy ~/Downloads/jre1.6.0_27/lib/javaws.jar to /usr/lib/jvm/default-java/jre/lib.
  3. As root, create a link ln -s default-java java-6-sun.
  4. Run sweethome3d.

It worked at least for me.

share|improve this answer
This a quite worse solution than the accepted one. Not only are you using a manual download instead of using repositories, you are copying this over the the already installed version. You can have all kind of fun with this setup if the normal system updates decide to update their java. – Javier Rivera Sep 20 '11 at 17:49

I think this is caused by SweetHome3D, which looks for Sun java files directly.

I put javaws.jar from another package as file to /usr/lib/jvm/java-6-sun/jre/lib/javaws.jar then, the problem seems solved, SweetHome3D started.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.