Bug 82804 Jar creation should use less memory
I noticed that the JarWriter will read the entire file it plans to store into memory. An optimization would be to stream the file directly into the JarOutputStream. The only catch is with STORED items which need the CRC32 computed. A penalty could be taken in that case to compute the CRC in a loop and then stream the file.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/jarpackager/JarPackageData.java
* 			<code>false</code> if the manifest has to be regenerated
	 */
	public boolean isManifestReused() {
		return fReuseManifest;
	}
	/**
	 * Sets whether a previously generated manifest should be reused.
	 * 
	 * @param state the new state
	 */
	public void setReuseManifest(boolean state) {
		fReuseManifest= state;
		if (fReuseManifest)
			
			setSaveManifest(true);
	}
	/**
	 * Returns the location of a user-defined manifest file.
	 * 
	 * @return	the path of the user-defined manifest file location,
	 * 			or <code>null</code> if none is specified
	 */
	public IPath getManifestLocation() {
		return fManifestLocation;
	}
	/**
	 * Sets the location of a user-defined manifest file.
	 * 
	 * @param manifestLocation the path of the user-define manifest location
	 */