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);
}
}
起動時にスクリプトが実行されないのはなぜですか?