使用 Java 程序,我添加了一个.desktop
文件/etc/xdg/autostart
以在用户登录时运行脚本。该脚本在用户登录时没有运行,并且当我手动检查启动应用程序对话框时,它没有添加到其中。
我添加的文件是/etc/xdg/autostart/Startup.desktop
,我想要在用户登录时运行的脚本是/usr/bin/Startscript
。我写的添加桌面文件的代码如下:
private void writeDesktopFile() {
File f = new File("/etc/xdg/autostart/Startup.desktop");
if (!(f.exists())) {
try {
f.createNewFile();
BufferedWriter bw = new BufferedWriter(new FileWriter(f, true));
bw.write("[Desktop Entry]");
bw.newLine();
bw.append("Name=Startup");
bw.newLine();
bw.append("Exec=Startscript");
bw.newLine();
bw.append("Type=Application");
bw.newLine();
bw.append("Terminal=false");
bw.newLine();
bw.append("Categories=GNOME;GTK;Utility;");
bw.newLine();
bw.append("X-Ubuntu-Gettext-Domain=Startscript");
bw.newLine();
bw.flush();
bw.close();
Runtime.getRuntime().exec("chmod +x /usr/bin/Startscript");
} catch (IOException ex) {
Logger.getLogger(LinuxStartup.class.getName())
.log(Level.SEVERE, null, ex);
}
}
为什么我的脚本没有在启动时运行?