問題タブ [launch-agent]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cocoa - XPC サービス、起動エージェントとして起動
バックグラウンドで実行され、定期的なタスクを作成する XPC サービスを作成しました
パス /Users/Peter/Library/Application Support/AGENT TEST APPS/CS Agent.xpc に配置しました
ファイルを直接実行することで実行できます
私は.plistをLaunchAgentsに配置し、実行可能ファイルを参照しました
/li>
しかし、起動時に起動しません
アップデート
手動でロードしようとしました
しかし、アクティビティモニターには表示されず、生成されるはずの出力もありません(ファイルを作成します)
launchctl list を実行すると表示される
jenkins - LaunchAgent Jenkins がプラグインを使用した CocoaPods のインストールに失敗する
jenkins CI サーバーをセットアップして、iOS および Android コードをビルドしようとしています。Xcode プラグインといくつかのシェル スクリプトを使用して、いくつかのプロジェクトをビルドしていますpod install
。そこから、このシェル スクリプトを削除し、CocoaPods プラグインを使用して適切に処理しようとしました。最初はうまくいきました。
残念ながら、それは CLI から手動で jenkins を実行したときでした。LaunchAgent をセットアップすると、CocoaPods プラグインが失敗し、コンソール出力にエラーや有益な表示が表示されません。
ps コマンドの結果:
動作中の ps コマンドの結果:
プラグインをドロップするだけですか、それとも LaunchAgent に不明な点がありますか?
LaunchAgent homebrew.mxcl.jenkins.plist:
macos - OS X LaunchAgent - デスクトップの準備ができたら実行しますか?
ポップアップをクリックすることを含むいくつかのApplescriptのビットを含む、いくつかの複雑なことを行うbashスクリプトを作成しました。これは、マシン上で作成されたすべての新しいアカウントで実行され、ユーザー用のブラウザ拡張機能(Adblockなど)をセットアップします。
スクリプトは、手動で呼び出すと問題なく実行されますが、LaunchAgent として配置すると不安定になります。アカウントのログイン/パスワードの作成画面が表示されている間に実行されているようです-最初にウェルカムPDFが開き、ログインすると、ファイルなしでプレビューが既に開いている場合があります。
それ以外の場合は、ログインしても 50 秒間何も起こりません。時折、その動作も不安定になります。
スクリプトは、新しいアカウントごとに 1 回実行されるため、launchagent として実行する必要があります。スクリプトは実際には最後に launchagent plist を削除するため、再度実行することはできません。デスクトップが完全にロードされたらスクリプトを開始するようにスクリプトの実行を遅らせる方法はありますか? おそらくドックが現れたら。実行しようとするのが早すぎて、Preview や Safari を開くことができず、使用中の plist を削除しようとして、混乱したループに陥ってしまうと思います。明らかに、最もクリーンな実行方法ではありません。
macos - MAC OSX エージェント - 複数のインスタンスを起動する方法
ヘルパー オブジェクトを作成しようとしています (デーモンまたはエージェントの可能性があります)。Chrome および Safari ヘルパーで見られるように、これはオンデマンドで起動され、その複数のインスタンスがそこにあるはずです。
何を試しましたか?これらのApple Docs、Launchd Tutorial、Creating Start Up Items in Mac OS Xを参照しました
そこには、NumberOfProcesses
キーを使用する必要があるプロセスの数について言及されていますが、私はそれを使用しましたが、アクティビティモニターではインスタンスが 1 つしか表示されません。
そして、私のplistは次のようになります
Chrome の時点で Launch Agent Helper をレプリケートするための正しいパスを使用していますか? それを成し遂げるための最良の方法を見つけるのを手伝ってください。
macos - LoginWindowコンテキストでWindowServerにアクセスするために起動デーモンをロードする方法は?
WindowServerにアクセスできるOSX用のアプリケーションを開発しています。このアプリケーション (エージェントと呼びましょう) は、現在ログインしているすべてのユーザーに対して最初にロードされます。実行中の loginwindow プロセスを検索し、各ユーザーとして plist をロードします (bsexec を使用して適切なコンテキストを設定します)。
ps -ef | grep ログインウィンドウ
501 90425 1 0 午前 10 時 46 分?? 0:01.21 /System/Library/CoreServices/loginwindow.app/Contents/MacOS/loginwindow コンソール
502 90721 90426 0 午前 10 時 54 分?? 0:00.36 /システム/ライブラリ/CoreServices/loginwindow.app/Contents/MacOS/loginwindow
0 91103 90426 0 午前 11:01 ?? 0:02.57 /システム/ライブラリ/CoreServices/loginwindow.app/Contents/MacOS/loginwindow
ここでは、ログインしたユーザー (非アクティブ) 用に 3 つの loginwindow プロセス 2 と、ログイン ウィンドウ (アクティブ) 用に 1 つのプロセスがあります。
走る:
/li>
ログインしているユーザーごとに。
と
/li>
ログインウィンドウ用。
問題は、エージェントがログイン ウィンドウで (root として) 起動すると、次のエラーが発生することです。
しかし、ユーザーにログインしてから再度ログイン ウィンドウにログアウトすると、起動したエージェントが適切に作成され、ウィンドウ サーバーに問題なくアクセスできます。
新しい OSX バージョンで問題が発生します (たとえば、10.6.8 では問題なく動作します)。
アイデアが不足していますが、これをログインウィンドウで機能させたいと思っています。助けてくれてありがとう!
/グラシュ
macos - OS X 10.10 で Qt Creator のカスタム $PATH を設定できない
カスタム ビルド システム (ninja) で Qt Creator を使用しています。問題は、Qt Creator IDE に渡される $PATH 変数が完全にバニラであることです: /usr/bin:/bin:/usr/sbin:/sbin
.
そのため、IDE ではなくターミナルでビルド手順を実行するか、bash -c '/path/to/ninja list of targets'
代わりに書く必要があります。ninja list of targets
$PATH を設定するために、すべての既知のレシピを試しました。
- ~/.bash_profile および ~/.profile
- /etc/パス
- /etc/paths.d/*
- /etc/launchd.conf (
setenv PATH .....
) - ~/Library/LaunchAgents/*.plist (
sh -c 'launchtcl setenv PATH $PATH:.....'
) - /Library/LaunchAgents/*.plist
launch agenes を使用するアイデアは、StackOverflow answerで説明されています。
どれも機能しません!私のカスタム .plist ファイル内の任意の環境変数は正しく設定されます - PATH 以外のすべて。echo xzxzxz=$XZXZXZ path=$PATH
(簡単にテストしました: xzxzxz も起動エージェントに設定されているカスタム ビルド ステップを作成しました)。
興味深いことに、bash セッション ( '/Applications/Qt Creator.app/Contents/MacOS/Qt Creator' &
) から Qt Creator を起動すると、bash 自体と同じように正しい PATH が取得されます。
また、興味深いのは、起動エージェントで割り当てられた PATH が後で上書きされることです。そこに と書いsh -c 'launchctl setenv PATH $PATH:/HELLOWORLD'
たのですが、その HELLOWORLD が にありませんecho $PATH
。そのため、競合状態が発生し、後で誰かが /etc/paths および /etc/paths.d から PATH を再構築します。
したがって:
- OSX 10.10 で環境変数、特に PATH を設定する方法を網羅した最新の説明はありますか?
- なぜPATHがバニラになるのですか?
- Qt Creator で勝つ方法は?