home *** CD-ROM | disk | FTP | other *** search
-
- This is the Risc OS guavac FAQ
- Peter Naulls, January 7th, 1998
- pnaulls@usa.net
-
-
- guavac refers to the Acorn Risc OS port of guavac, a Java source compiler,
- distributed under a GNU license, and ported by myself to Risc OS.
- The version referred to by this FAQ is 1.0, Risc OS release 1.1.
- guavac is sometimes also referred to as !Guavac.
-
- !Java refers to Acorn's 1.0.2 port of Sun's JVM to Risc OS.
-
- javac is the Java compiler as distributed as part of Sun's Java
- Development Kit.
-
-
- 1. Who's responsible for errors and emmisions in this FAQ?
- 2. Where can I get the latest version of guavac from?
- 3. Why does guavac complain "No writable memory at this address"?
- 4. guavac says my source file is not a plain file or invalid source file,
- what's wrong?
- 5. I've compiled my program, but !Java says it can't find my class, what's
- going wrong?
- 6. What is the format of the Java$ClassPath variable, and when do I need
- to set it?
- 7. Why will javac compile some things, but not guavac?
- 8. Why will guavac compile some things, but not javac?
- 9. Why doesn't guavac do <<insert Risc OS bug/feature>>?
- 10. Why doesn't throwback work?
- 11. What's a good book on to learn Java from?
- 12. What other Risc OS Java-related programs are available?
- 13. Where can I find more Risc OS related Java programming information?
-
-
-
- 1. Who's responsible for errors and emmisions in this FAQ?
-
- A. I (Peter Naulls) take full responsibilty, and no blame should be
- placed on employees of Acorn or Sun Microsystems. Corrections and
- additions are of course gratefully received.
-
-
- 2. Where can I get the latest version of guavac from?
-
- A. The Risc OS guavac homepage is: http://chocky.home.ml.org/java/guavac/
-
-
- 3. Why does guavac complain "No writable memory at this address"?
-
- A. The guavac executable requires 3Mb of memory. You need to increase
- your wimpslot to this. If you are using a pre-Risc PC, you will need
- more, since guavac will be unable to use dynamic areas for its heap.
-
-
- 4. guavac says my source file is not a plain file or invalid source file,
- what's wrong?
-
- A. Firstly, make sure you have the newest version of guavac - release 1
- has difficulty finding files in the CSD. Otherwise, guavac can't find
- your file, or you've used an illegal format for the filename. If you
- don't specify a full Risc OS path, guavac will look in the CSD. Java
- source files as understood by guavac must be either file/java or
- java.file, where 'java.' in the second example is a directory. For
- the first format, you can give either of:
-
- guavac file.java
-
- or
-
- guavac file/java
-
- In the second, you must have:
-
- guavc java.file
-
- for it to be found.
-
-
- 5. I've compiled my program, but !Java says it can't find my class, what's
- going wrong?
-
- A. Acorn's Java is very picky about what it will do with Java classes. It
- will complain when:
-
- (a) The file !Java.ClassesZip is an image file (change the filetype to a
- textfile)
- (b) The Java class does not have a "/class" extension (or as much as
- will fit into a Risc OS filename). This means you will want to
- use the guavac -ext flag.
- (c) The class you compiled was declared as public. When you do this,
- the filename must be the same as the class's name. If you rename it
- for whatever reason, !Java will complain.
-
-
- 6. What is the format of the Java$ClassPath variable, and when do I need
- to set it?
-
- A. Firstly, you won't need to set this unless you are doing something
- unusual (this also applies to the -classpath flag). If you do need
- to set it, then the format is simply the full Risc OS path, although
- you can use a Unix type path if you need to. Note that !Java sets this
- variable to point to !Java.ClassesZip, and guavac will use this.
-
-
- 7. Why will javac compile some things, but not guavac?
-
- A. There are somethings that guavac does not handle well (have a look at
- !Guavac.doc.TODO) The best example is circular dependencies between classes.
- A fix for this problem is to first compile a "minimal" version of one
- of the two circular classes, then compile the second and finally
- the full version of the first class.
-
-
- 8. Why will guavac compile some things, but not javac?
-
- A. You're probably trying to compile Java 1.1 things like inner classes,
- which are not supported in Java 1.0.2.
-
-
- 9. Why doesn't guavac do <<insert Risc OS bug/feature>>?
-
- A. Maybe it's a bug in either the port or the program itself. Please
- contact me with details, and if possible, the smallest amount
- of Java source that reproduces the problem. It may also be helpful
- to know details of machine and OS. If it looks like a "proper"
- guavac bug rather than a Risc OS related one, try asking on the
- guavac mailing list.
-
-
- 10. Why doesn't throwback work?
-
- A. You need to have the DDEUtils module loaded for throwback to work,
- and you will need a throwback-capable editor running such as StrongED
- or Zap.
-
-
- 11. What's a good book on to learn Java from?
-
- A. Try to get one that supports Java 1.1. Some good books are:
- "Java in a Nutshell" and "Special Edition Using Java".
-
-
- 12. What other Risc OS Java-related programs are available?
-
- A. Acorn's !Java, as released on Clan CD at Acorn World 1997.
- D-Java, a free Java bytecode dissasembler, ported by myself.
- Chockcino (not yet released) my Java 1.1 Virtual machine.
- See http://chocky.home.ml.org/java/ for information on D-Java and
- Chockcino.
-
-
- 13. Where can I find more Risc OS related Java programming information?
-
- A. The Acorn newsgroupps. In pariticular, comp.sys.acorn.programmer.
- You might also like to read my monthly series on Java programming
- in RISC User.
-
-
-