home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-09-04 | 11.8 KB | 300 lines | [TEXT/CWIE] |
- ========================================================================
- Metrowerks Java Linker Release Notes
- ========================================================================
-
- Version: 1.3
- Date: 09/04/98
- Author: Pedro Larios, John Cortell, Tim Freehill,
- Clint Popetz, Greg Bolsinga
- ========================================================================
-
- This linker will package the compiled java classes in either a Java
- standard, jar file, build a folder hierarchy corresponding to the Java
- packages in which the classes reside, or generate an application (Windows
- only-- see notes below). Note that the compiled Java class files are stored
- by the IDE as project data; they are not accesible to the developer until
- the project is linked.
-
- This linker requires the use of the Metrowerks 3.1 IDE or later.
-
- ========================================================================
- New Features in This Version
- ========================================================================
- 1.3b6
- * Linker now works with IDE 3.0 and IDE 3.1.
-
- 1.3b5 The linker now defers building the project's classpath until right
- * before the Java application/applet is launched. Operations like
- changing project settings, adding/removing files, etc will be
- much faster because of this.
-
- 1.3b2 [MAC ONLY] The linker no longer merges Mac resources into jar/zip
- * files. It also does not generate the standalone application. This
- is because a new post linker has been developed for these tasks.
- If you want to merge Mac resources into a jar/zip file, generate
- an application, or generate a jbindery Mac application, you will
- need to select the "Java MacOS Post Linker" and set the appropriate
- options in the plugins pref panel. Refer to the Java MacOS Post
- Linker release notes for details.
-
- 1.3b1
- * [WINDOWS ONLY] The linker now enables debugging for both the Sun VM
- and the Microsoft VM.
-
- 1.2fc1
- * [WINDOWS ONLY] added option for generating a non-console executable
- when building applications.
-
- 1.1b3
- * added rudimentary cross platform pref capability. If the factory prefs
- are chosen for a project, an default value for that pref will be
- selected for that pref based on the platform on which it's running.
- Currently, the only platform specific prefs are on the Java Target
- panel. They are the VM chosen for application running, and the
- appletviewer chosen if the project's an applet. See the prefs release
- notes for more information.
-
- 1.1b2
- * Files included in the project, but not recognized by the linker as
- a program related file (class, zip, java, jar, html), will be included
- at the root of a jar file or application if it not set to be weak
- imported. This is intended to allow the user to include .gif or .jpg
- files in the output of file. Note that to add these files to the project
- in the first place, you must add a mapping for it in the file mappings
- project settings panel.
-
- 1.1b1
-
- * The Linker now tells the VM the classpath necessary for it
- to find all of the class files an application uses, including
- 3rd party libraries.
-
- * The linker will now tell the run helper which VM to use when running
- the project. The VMs available are listed in a popup on the Java
- Project pref panel.
-
- * The linker now supports generation of .jar files in accordance with
- Sun's jar specifications.
-
- * Manifest files for jar files can now be generated.
-
- * The java bean attribute for the classes in a project can be set by
- either including a .mf file in the target's link order, or by having
- a file with the name "projectname.mf" in the same folder as the
- project (similar to a .exp or lnkcmdfile.txt file.)
-
- * Standalone executable applications can now be created for your java
- applications. Follow these instructions:
-
- [MAC]: include the application Metrowerks Java Standalone in your
- java application project. Use the Java Project pref panel to set
- parameters for your java app, classpath, and working directory.
- When the project is linked, an application will be produced which
- contains your java class files. When double clicked, this application
- will run your java application. Be aware that any UI that the
- program needs is the responsibility of your java code to display.
- See the Standalone Java readme for more detailed information.
-
- [WIN]: just select the output type of Application on the Output
- pref panel. When linked, the output will include two files:
- ProjectName.exe and ProjectName.zip. When double clicked or run
- from the command line, the .exe will load the selected VM and run
- the java program, which is contained in the .zip file.
-
- * Support added to filter browser names, so you can specify what portions
- of a java identifier you don't want to see in browser popups or views.
- For example, if you don't want to see the fully qualified classname for
- the java.lang.* classes, just type this in the browser filter field in
- the Java Language pref panel, and it will not appear.
-
- * A dependency map can now be generated at link time which lists all of
- the classes external to a file on which a file's code depends. The
- compiler gathers this data, and the linker emits it.
-
- * Better integration with the run helper and debugger, making the code/
- compile/debug cycle smoother.
-
- * Internal error handling reworked to report more meaningful link errors
- and system related errors.
-
- * Linker now provides the option of deleting all class files from the output
- directory before emitting the new ones from the build. If this is turned
- off, only class files of the corresponding name will be overwritten.
-
- [MAC only]
- * The ability to set an application or jar file's creator code and
- type has been re-added. Note that the default creator for jar files
- is now ClassWrangler instead of Metrowerks Java, so the jar files
- are now doubleclickable to be opened in ClassWrangler. This default
- can be changed by changing the setting in the Output pref panel.
-
- * The linker now allows the user to select the method used to truncate
- long filenames to the mac 31 character limit. Note that the most VMs
- will not run properly when truncated class names are used, so they
- should be avoided.
-
- * You can now specify the working directory for applications.
-
- * You can now debug if the output is a folder hierarchy.
-
- ========================================================================
- Bugs Fixed in This Version
- ========================================================================
- 1.3fc2
- * Fixed a problem with linking projects with subtargets.
-
- 1.3b2
- * The linker no longer complains about a bad manifest if a jar file
- is missing a manifest.
-
- * [WINDOWS Only] Fixed a bug in the executable generated by the linker
- when using the Sun VM that would prevent the application to find
- the main class file in the jar.
-
- 1.3b1
- * [WINDOWS Only] The linker now appends jar/zip files to the classpath
- instead of prepending them like it used to.
-
- 1.2fc1
- * Fixed a bug that would cause the linker to complain about duplicate
- class files when linking multiple jar files containing manifest
- information.
-
- * Emit Dependency Map did not work if the *.JMAP file was already open.
- The linker now reports a meaningful error message.
-
- 1.1.1
- * [MAC only]Fixed a bug which would cause empty folders to be deleted
- if an output folder name was not specified.
-
- * Fixed a bug which caused a linker exception when linking a project
- containing an empty java source file.
-
- * Fixed a bug that caused incorrect behavior when linking multiple
- jar files with manifest information.
-
- * The linker now reports a meaningful error message if the user
- attempts to link the output file onto itself.
-
- 1.1fc4
- [MAC only]
- * Fixed double dispose of a handle when writing run resources.
-
- 1.1fc3
- * Linker will now handle arbitrarily deeply nested main classes when
- the output of a project is a class folder. Previously, it would barf
- if the partial path to the main class from the top of the class folder
- hierarchy was greater than 63 characters long.
-
- *** IMPORTANT NOTE ***: with the good comes the bad. This fix means
- that the linker must actually create the folder hierarchy it will
- eventually use to contain the link's output. This shouldn't be a
- problem, once the project's settings have stabilized. But be advised
- that if you change either the name of the output folder or the target
- directory, a folder structure will remain at that location. There isn't
- a safe way for the linker to clean it up, so it doesn't. If we think
- of a better way to do this, we will implement it in future versions.
-
- 1.1fc1
- * Fixed crasher in disassembler when a .zip file with a manifest was
- disassembled.
-
- 1.1b4
- * Make error message more generic for "could not create output"
-
- * Prevent the linker from inappropriately throwing a file locked error.
-
- * Compiled out a DebugStr for unhandled exceptions.
-
- 1.1b3
- * Now can cancel links which include large zip files that aren't weak
- linked.
-
- * Fixed disassembler crasher for string index of 0.
-
- [WIN95/NT]
- * Fixed registry check for run app that was disabling the Run command.
-
- 1.1b2
-
- * Corrected the disassembler output for floats and doubles to use the
- exponential notation rather than regular float notation. This is to
- prevent it from overflowing the string that contains it.
-
- * Disassembled files will no longer prompt the user to be saved when
- the window is closed. This parallels the behavior of PPC disassembly
- windows.
-
- * The manifest file will now be compressed according to the user's
- selection of the compress flag on the output panel. It was always
- compressed.
-
- [WIN95/NT only]
- * Disassembler would sometimes crash if the file disassembled had a
- long in its constant pool.
-
- * For long, int and float constants, the byte dump was out of order
-
- * The debug command is now only enabled if the user selected VM or viewing
- application is Internet Explorer. Other VMs will be added soon.
-
- * Corrected linker code looking for an invalid registry item.
-
- [MAC only]
- * Disassembler now properly pays attention the user cancel using command-.
-
- * Corrected the reporting of the max file size exception, so the user
- would know why a disassemble stopped.
-
- * Fixed bug in the browser unmangler for 68k which prevented any string
- from being unmangled.
-
- * Fixed bug causing invalid reporting of the classpath to the main class
- to Metrowerks Java.
-
- 1.1b1
-
- * The "Run" menu item in the IDE will now automatically get disabled if
- the .html file is removed from a applet project.
-
- ========================================================================
- Known Bugs and Incompatibilities
- ========================================================================
-
- * Incremental linking of class folder heirarchies is broken in this
- release due to a bug in the IDE. To avoid this problem, make sure
- the option to delete all class files before linking is selected
- in the Java Output preference panel.
-
- [WIN]
- * The user can't interrupt the disassembly of a large file by pressing
- control-break.
-
- ========================================================================
- Additional Notes
- ========================================================================
-
- [MAC]
-
- * The java disassembler will use up to 90% of the IDE's heap for its
- output. This means that large zip files will likely run out of memory
- before they are completely disassemble. You can increase your memory
- partition to avoid this.
-
-
- ========================================================================
- Contacting Metrowerks
- ========================================================================
-
- For bug reports, technical questions, and suggestions, please use the
- forms in the Release Notes folder on the CD, and send them to
-
- support@metrowerks.com
-
- See the CodeWarrior on the Nets document in the Release Notes folder for
- more contact information, including a list of Internet newsgroups,
- online services, and patch and update sites.
-
- ========================================================================
-
- Metrowerks Corporation