From: Richard S. H. <he...@un...> - 2004-05-05 19:54:41
|
Okay, I messed with Kaffe a bit...it seems like it will be a pain to get Oscar running on it, since it doesn't support even the JDK 1.2 API. It doesn't support System.setProperty() and I think I have determined that this is the root of your problem (probably). The reason why you are getting the "deadlock" message is because the "main" thread is exiting and there are no other "non-blocked" threads, so it thinks it has a deadlock. The "main" thread exits after starting/installing the autostart bundles. Normally, the "shelltui" bundle starts a thread to read from stardard input to accept shell commands. Since none of the bundles start this thread never gets created, thus, when the main thread exits there are no active threads. Oscar uses System.setProperty() to set the system properties, which cannot be set since this method doesn't exist. So, I tried the alternative in Main.java, which is passing them into the constructor: Properties map = new Properties(); map.put(OscarConstants.PROFILE_NAME_PROP, profileName); map.put("oscar.auto.start.1", "file:bundle/shell.jar file:bundle/shelltui.jar file:bundle/bundlerepository.jar"); m_oscar = new Oscar(map); This got me farther, but I ended up with this instead: java.lang.NoSuchMethodError: java/security/CodeSource.<init>(Ljava/net/URL;[Ljava/security/cert/Certificate;)V at org.ungoverned.oscar.Oscar$CheckImportsPrivileged.run(Oscar.java:4206) at java.security.AccessController.doPrivileged(AccessController.java:37) at org.ungoverned.oscar.Oscar.resolveBundle(Oscar.java:3196) at org.ungoverned.oscar.Oscar.startBundleWithStartLevel(Oscar.java:1731) at org.ungoverned.oscar.Oscar.setStartLevelInternal(Oscar.java:783) at org.ungoverned.oscar.Oscar.setStartLevel(Oscar.java:700) at org.ungoverned.oscar.Oscar.initialize(Oscar.java:572) at org.ungoverned.oscar.Oscar.<init>(Oscar.java:344) at org.ungoverned.oscar.Oscar.<init>(Oscar.java:276) at org.ungoverned.oscar.Main.main(Main.java:100) Oscar: Error starting file:bundle/shell.jar So it looks like the security stuff will have to be hacked a little bit too. So, perhaps you can take it from there and let me know what you find out. Good luck. -> richard p.s. If you really want to hack the source of Oscar, I would recommend grabbing the latest beta version, since the 1.0.0 release has quite a few changes. Gaurav Ganeriwal wrote: >Greetings, > >I am trying to port OSCAR on KAFFE-1.0.7 (http://wwww.kaffe.org). >As kaffe donot have swing package support, i decided to use SwingWT package. I have made necessary changes in the OSCAR source code. I have also added various bundles required to run oscar. With this set up i am able to build oscar.jar through ant, but when i try to run oscar it gives me following error: > >Welcome to Oscar. >================= > >Enter profile name: my_profile > >Oscar: Error starting file:bundle/shell.jar >Oscar: Error starting file:bundle/shelltui.jar >Oscar: Error starting file:bundle/bundlerepository.jar >Dumping live threads: >`OscarStartLevel' tid 0x8419010, status SUSPENDED flags > blocked@0x8400fa8 (0x8419010->|) >`OscarPackageAdmin' tid 0x840e010, status SUSPENDED flags > blocked@0x8400b88 (0x840e010->|) >`OscarDispatchQueue' tid 0x83c9010, status SUSPENDED flags > blocked@0x83beac8 (0x83c9010->|) >`gc' tid 0x828e010, status SUSPENDED flags DONTSTOP > blocked@0x827ea98 (0x828e010->|) >`finaliser' tid 0x8285010, status SUSPENDED flags DONTSTOP > blocked@0x81ac3c0 (0x8285010->|) >Deadlock: all threads blocked on internal events >Aborted > > >What can be the reason for this error? > >For building oscar i unjar oscar_20031127.jar and bundlesrc.jar added jar files according to build.xml. I am using default system.properties file and example.poilcy file. > >Thanks and Regards, >Gaurav Ganeriwal > > > |