为什么我得到的文件不存在?

问题描述

我正在尝试使用acquiadevdesktop使用以下代码运行应用程序:

 Process p1 = Runtime.getRuntime().exec("C:\\Program Files (x86)\\DevDesktop\\AcquiaDevDesktop\\AcquiaDevDesktop2.exe");
        pb.start();
        Desktop.getDesktop().open(new File("AcquiaDevDesktop2"));
    } catch (IOException ex) {
        Logger.getLogger(HConnexion.class.getName()).log(Level.SEVERE,null,ex);
    }

但我遇到此错误

java.lang.IllegalArgumentException: The file: AcquiaDevDesktop2 doesn't exist.
at java.desktop/java.awt.Desktop.checkFileValidation(Desktop.java:367)
at java.desktop/java.awt.Desktop.open(Desktop.java:427)
at DataBase.HConnexion.run_wamp(HConnexion.java:88)
at DataBase.HConnexion.connectDb(HConnexion.java:35)
at DataBase.DBcontrol.creer_piece(DBcontrol.java:105)
at pdr.FrontController.initialize(FrontController.java:160)
....

该如何解决

解决方法

请确保添加文件类型,因为new File()无法假定它是什么类型。

例如,如果是文本文件,则应为:new File("AcquiaDevDesktop2.txt"));