Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Eclipse中使用launch4j来运行和开发应用程序?_Java_Out Of Memory_Launch4j - Fatal编程技术网

Java 如何在Eclipse中使用launch4j来运行和开发应用程序?

Java 如何在Eclipse中使用launch4j来运行和开发应用程序?,java,out-of-memory,launch4j,Java,Out Of Memory,Launch4j,当我们在eclipse中运行程序时,我们正在使用musicg库开发一个应用程序,以获得outofmemory异常 下面是课堂 public class FingerprintDemo{ public static void main (String[] args){ String filename = "Fun - Some Nights (ORIGINAL.wav"; // create a wave object Wave wav

当我们在eclipse中运行程序时,我们正在使用musicg库开发一个应用程序,以获得outofmemory异常

下面是课堂

public class FingerprintDemo{

    public static void main (String[] args){

        String filename = "Fun - Some Nights (ORIGINAL.wav";

        // create a wave object
        Wave wave = new Wave("D:\\DropBox\\Dropbox\\Convencion 2012\\AUDIOS WAV/"+filename);

        // get the fingerprint
        byte[] fingerprint=wave.getFingerprint();

        // dump the fingerprint
        FingerprintManager fingerprintManager=new FingerprintManager();
        fingerprintManager.saveFingerprintAsFile(fingerprint, "out/"+filename+".fingerprint");

        // load fingerprint from file
        byte[] loadedFp=fingerprintManager.getFingerprintFromFile("out/"+filename+".fingerprint");

        /*
        // fingerprint bytes checking
        for (int i=0; i<fingerprint.length; i++){
            System.out.println(fingerprint[i]+" vs "+loadedFp[i]);
        }
        */
    }
}
公共类指纹演示{
公共静态void main(字符串[]args){
String filename=“乐趣-一些夜晚(ORIGINAL.wav”;
//创建波浪对象
Wave Wave=新Wave(“D:\\DropBox\\DropBox\\Convencion 2012\\AUDIOS WAV/”+文件名);
//获取指纹
字节[]指纹=wave.getFingerprint();
//丢弃指纹
指纹管理器指纹管理器=新的指纹管理器();
指纹管理器.save指纹文件(指纹,“out/”+filename+“.fingerprint”);
//从文件中加载指纹
字节[]loadedFp=fingerprintManager.getFingerprintFromFile(“out/”+filename+“.fingerprint”);
/*
//指纹字节检查

对于(int i=0;i您在Eclipse中遇到一个OutOfMemoryError,因为您没有在运行配置中增加最大堆大小。但是,在Launch4J脚本中,您确实增加了它:
512

要解决Eclipse中的问题,请打开.Switch到Arguments选项卡并输入Xmx(最大堆大小)参数

从Eclipse运行Launch4J脚本确实不合适,请使用运行配置。尽管您可以创建一个Ant脚本来运行Launch4J并生成.exe

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
    at com.musicg.wave.extension.Spectrogram.buildSpectrogram(Spectrogram.java:117)
    at com.musicg.wave.extension.Spectrogram.<init>(Spectrogram.java:76)
    at com.musicg.wave.Wave.getSpectrogram(Wave.java:237)
    at com.musicg.fingerprint.FingerprintManager.extractFingerprint(FingerprintManager.java:83)
    at com.musicg.wave.Wave.getFingerprint(Wave.java:329)
    at com.musicg.main.demo.FingerprintDemo.main(FingerprintDemo.java:31)
<launch4jConfig>
  <dontWrapJar>false</dontWrapJar>
  <headerType>gui</headerType>
  <jar>D:\musicg\musicg.jar</jar>
  <outfile>D\musicg\\\musicg\.exe</outfile>
  <errTitle>MusicG</errTitle>
  <cmdLine></cmdLine>
  <chdir></chdir>
  <priority>normal</priority>
  <downloadUrl>http://java.com/download</downloadUrl>
  <supportUrl></supportUrl>
  <customProcName>true</customProcName>
  <stayAlive>false</stayAlive>
  <manifest></manifest>
  <icon></icon>
  <jre>
    <path>C:\Program Files\Java\jre7\</path>
    <minVersion>1.4.0</minVersion>
    <maxVersion></maxVersion>
    <jdkPreference>preferJre</jdkPreference>
    <initialHeapSize>512</initialHeapSize>
    <maxHeapSize>512</maxHeapSize>
  </jre>
</launch4jConfig>