Home > Support > SophiaCompress(Java) OASIS Technical FAQ

SophiaCompress (Java)

General

I cannot install SophiaCompress(Java) OASIS.

Version :

All version

Answer 1 :

To run SophiaCompress(Java) OASIS, Java 2 SDK 1.3.1 or 1.4.2 is prerequisite.

Solution : Before installing SophiaCompress(Java) OASIS, install Java 2 SDK 1.3.1 or 1.4.2(Java 2 SDK 1.4.2 is recommended).

Answer 2 :

To run SophiaCompress(Java) OASIS, JRE(Java Runtime Environment) 1.4.2 or 1.5.0 is prerequisite.

Solution : Before installing SophiaCompress(Java) OASIS, install JRE(Java Runtime Environment) 1.4.2 or 1.5.0.

J2SE 1.4.2 Downloads :

Java 2 Platform, Standard Edition, v 1.4.2 (J2SE) is available at the following site.

Download Java 2 Platform, Standard Edition, v 1.4.2 (J2SE)

SophiaCompress(Java) OASIS never boots up.

Version :

All version

Answer 1 :

To boot up SophiaCompress(Java) OASIS, JRE 1.4.2 or 1.5.0 is required.

Solution : Set up the JRE(Java Runtime Environment) version in your PC with 1.4.2 or 1.5.0, and then boot up SophiaCompress(Java) OASIS.

Reference(in Japanese) : How to switch the JRE(Java Runtime Environment) version

Answer 2 :

In case the "Could not find main class. Program will exit." dialog is displayed, there is possibility that setting of the JAR extension is not correct.

Solution : Confirm whether or not the parameter of "Javaw.exe" is "-jar "%1" %*".

Reference(in Japanese) : How to switch the JRE(Java Runtime Environment) version : 7. Append "-jar "%1" %*" at the end of " ..... \Javaw.exe", and then push the OK button.

Answer 3 :

There is possibility that the installation of SophiaCompress(Java) OASIS is not perfect.

Solution : Uninstall SophiaCompress(Java) OASIS, and then install it again.

I cannot compress my application.

Version :

4.2.1, 4.2.0, 4.1.1, 4.1.0

Answer :

4.2.0 or 4.2.1 : "Basic Block Share" option and "Inner" preverifier is known to have some bugs.

4.1.0 or 4.1.1 : "Remove Unused Interface" and "Remove Unused method" options is known to have some bugs.

Solution : Please do not use these compression options and "Inner" preverifier.

Compression fails in every application.

Version :

4.2.0, 4.1.1, 4.1.0

Answer :

Message saying "File might be broken. An error occurred while setting up for the compression. Please check if the file path is correct" appear in the log file when compressing any application.

Solution: Uninstall SophiaCompress(Java) OASIS, then re-install it. Afterwards, reboot your machine and boot up SophiaCompress(Java) OASIS.

Can I use SophiaCompress(Java) OASIS with other compression tools ?

Version :

All

Answer :

You can use "Obfuscator" and "ZIP compression tool".

One of the usable obfuscator is ProGuard. Use ProGuard first, then compress it with SophiaCompress(Java) OASIS.

We have not tested SophiaCompress(Java) OASIS with other obfuscators, but these may work well too. Generally, compression ratio will increase by compressing obfuscated application. If the compressed application does not work fine, compress it with SophiaCompress(Java) OASIS then, use obfuscators.

KZIP and 7-ZIP can be used as "ZIP compression tools. It can be configured in SophiaCompress(Java) OASIS. KZIP has better compression rate than that of 7-ZIP.

When booting up SophiaCompress(Java) OASIS, "unable to open file" error or "Unable to access jarfile C:\Program" pops up.

Version :
All
Answer :

Associate JAR file to Java.

  1. Open folder option of control panel.

  2. Choose [File Type]
  3. Click [New] button. When the dialog pops up, put [jar] in the file extension box and click on [OK].

  4. Choose [JAR] and click configure.
  5. Click [New] button in the [Action] field. Input [open] in the [Action] field. Input [%JAVA_HOME%\bin\javaw.exe -jar "%1" %*] in [Application to take this action], then press [OK]. (%JAVA_HOME% means the installed folder of Java)

  6. After clicking [OK], close all windows.

Example:
When Java development kit is being installed in C:\j2sdk1.4.2_14, input [C:\j2sdk1.4.2_14\bin\javaw.exe -jar "%1" %*] in the [Application to take this action] field.

Be careful that double quotations are required for %1.

I'm compressing the same application, but the compression result changes every time.

Version :
All
Answer :

It is because that items chosen for class integration and name sharing is selected randomly when an application is being compressed.

* The selection will be optimized in the future version.

When there is letter "ム" in the folder name, SophiaCompress(Java) OASIS fails to compress.

Version :
All
Answer :

Preverifier included in i-appli Development Kit Ver.1.02 does not work for application that has letter "ム" in its absolute path.

" Java.lang.OutOfMemoryError: Java heap space assign -Xmx<size>... " pops up.

Version :
All
Answer :

Follow the steps to increase the heap size.

  1. Choose [Tools] -> [Folder option] in Explorer.

  2. Open [File type] tab, choose JAR, then click on [Configure]

  3. Choose [open], then click on [Edit].

  4. Add "-Xmx<size>" after "-jar" in the [Application to take the action] area.

    Assign heap size for <size>. (ex: if 100MB, it would be 100m

  5. Click [OK], then reboot SophiaCompress(Java) OASIS.

I assigned -Xmx<100m > as booting option, but it doesn't work.

Version :
All
Answer :

I am using " java -jar -Xmx<10000> scompress.jar " for booting option. But "can not find file" error occur.

Please assign heap size without using "<" and ">".

Example:
10000 byte: java -jar -Xmx10000 scompress.jar
100 MB: java -jar -Xmx100m scompress.jar

The upgraded version of SophiaCompress(Java) OASIS doesn't boot up.

Version :
3.2 ~
Answer :

Java 2 SDK 1.4.2 or 1.5.0 is required to use SophiaCompress(Java) OASIS .

If you are using Java 2 SDK 1.3, please switch Java version.

I compressed my application using class integration function, but it terminates abnormally with "OutOfMemoryError".

Version :
3.0.0 ~
Answer :

When creating instances, integrated class consumes larger amount of memory than original classes. So there may be abnormal termination by OutOfMemoryError.

To solve this problem, drop the class integration level, or turn off the class integration option.

In what kind of program design will class integration work the best ?

Version :

All

Answer :

Try to reflain from using inheritance when coding.