From: Daniel R. <dl...@fi...> - 2002-09-25 20:22:23
|
I'm having issues with the fact that the Jython 2.1 installer has a dash in its class name. I filed the following issue: https://sourceforge.net/tracker/index.php?func=detail&aid=614605&group_id=12867&atid=112867 I'd be interested in getting this fixed sooner rather than later, and would be willing to do the work if someone can point me to where the installer is compiled and packaged. Thanks, Dan |
From: Samuele P. <ped...@bl...> - 2002-09-25 21:14:47
|
there's a jython_21.class on SF now. It has been tested before uploading but not after. Testing would be appreciated. regards. |
From: Finn B. <bc...@wo...> - 2002-09-26 07:14:20
|
[Samuele] > there's a jython_21.class on SF now. > > It has been tested before uploading but not after. Testing would be > appreciated. Cool. While it is far better to give it a valid name, I wonder if it is really enough. When invoking the main loader class from within 'ant', the loader will search for the jython_21.class file using the properties 'java.class.path' and 'user.dir'. If the jython_21.class file isn't found in any of these directories, the installation will abort. So Daniel, please test with the renamed jython_21.class file. If invoking the loader class doesn't work, you might want to try extracting the files inside jython_21.class as if jython_21.class was a .zip file (which it in fact is) and invoking the method 'net.sourceforge.liftoff.installer.Install2.main(String[])'. regards, finn |
From: Samuele P. <ped...@bl...> - 2002-09-26 12:08:02
|
From: Finn Bock <bc...@wo...> > [Samuele] > > > there's a jython_21.class on SF now. > > > > It has been tested before uploading but not after. Testing would be > > appreciated. > > Cool. > > While it is far better to give it a valid name, I wonder if it is really > enough. When invoking the main loader class from within 'ant', the you mean liftoff ??? yes I have not rebuilt the class, but clearly just renaming it would not have worked, java does not like classes with a filename not matching the internal name. What I have done is patching the constant pool and renaming the class. regards. |
From: Daniel R. <dl...@fi...> - 2002-09-26 16:25:19
|
Finn Bock <bc...@wo...> writes: > [Samuele] > > > there's a jython_21.class on SF now. > > It has been tested before uploading but not after. Testing would be > > > appreciated. > > Cool. > > While it is far better to give it a valid name, I wonder if it is > really enough. When invoking the main loader class from within 'ant', > the loader will search for the jython_21.class file using the > properties 'java.class.path' and 'user.dir'. If the jython_21.class > file isn't found in any of these directories, the installation will > abort. > > So Daniel, please test with the renamed jython_21.class file. Thanks for the quick response guys. Per the followups, I'm assuming that Samuele both renamed the .class file and patch the bytecodes -- javap certainly thinks that the class contained in jython_21.class is jython_21. However, things still don't work (JVM thinks bytecodes are bogus). I recorded the errors in the issue: https://sourceforge.net/tracker/index.php?func=detail&aid=614605&group_id=12867&atid=112867 > If invoking the loader class doesn't work, you might want to try > extracting the files inside jython_21.class as if jython_21.class was > a .zip file (which it in fact is) and invoking the method > 'net.sourceforge.liftoff.installer.Install2.main(String[])'. I tried unzipping the .class file. It produced the source directory structure, which looked good until I actually tried invoking the Install2 class. That produced an internal JVM error (ick). Further investigation reveled that even though directories had been extracted from the jython_21.class file properly, files had no unix permission bits set at all (e.g. ----------, rather than -rw-rw-r--). I ran `find . -type f | xargs chmod 664` on my Linux box (RH 7.3, 2.4.20-pre7 kernel) to rectify the situation. After that, I could both launch the Install2 class in GUI mode and use the -o command line option to specify my desired install location. Now, as the above is still just a work around, how about a quick 2.1.1 release which fixes this class file name (and contains no other changes)? The Release_2_1 CVS tag can be turned into a branch by checking out the existing tag, deleting it, and re-tagging with a branch tag. cd jython cvs up -r Release_2_1 cvs tag Release_2_1_0 # preserve the history, just in case ;) cvs tag -d Release_2_1 cvs tag -b Branch_2_1 I'd supply the appropriate patch myself, but I didn't see which property needs to be changed to correct the class name of the installer. In the above SF Tracker issue, Finn mentioned a "installerclass" property in the installer/liftoff.props file, but I didn't see metion of such a property in the 2.1 sources. If it comes to it, I can pull the liftoff source and scour it for the right property, but I'm hoping you guys know off the top of your collective heads. ;) After the patch has been applied, CVS could be tagged for 2.1.1. cvs tag Release_2_1_1 -- Daniel Rall <dl...@fi...> |
From: Finn B. <bc...@wo...> - 2002-09-26 12:46:46
|
[me] >While it is far better to give it a valid name, I wonder if it is really >enough. When invoking the main loader class from within 'ant', the [Samuele] > you mean liftoff ??? Maybe we are just talking past each other, but I think Daniel wanted to invoke the main method of the jython_21 class from with an ant script. And I just don't think that the fine renaming and patching that you did is enough to allow that. In addition to the problem of finding the jython_21.class file, the installer will also call System.exit() if an error occurs. So the ant task is at least required to fork. But basicly, I should pick a better name for the next release. regards, finn |
From: Daniel R. <dl...@fi...> - 2002-09-26 16:56:44
|
Finn Bock <bc...@wo...> writes: ... > Maybe we are just talking past each other, but I think Daniel wanted to > invoke the main method of the jython_21 class from with an ant > script. Right. -- Daniel Rall <dl...@fi...> |