diff --git a/ShadowsocksX-NG2/App/LaunchAgentService.swift b/ShadowsocksX-NG2/App/LaunchAgentService.swift
index 4d2fe690..81756033 100644
--- a/ShadowsocksX-NG2/App/LaunchAgentService.swift
+++ b/ShadowsocksX-NG2/App/LaunchAgentService.swift
@@ -10,7 +10,8 @@ protocol LaunchAgentControlling {
}
/// 生产实现:plist 必须位于 app bundle `Contents/Library/LaunchAgents/`,
-/// ProgramArguments 为 bundle 相对路径(launchd 按注册 app 的 bundle 解析)。
+/// ProgramArguments 为 Contents/ 相对路径(launchd 按注册 app 的 Contents/
+/// 解析)。
struct SMAppLaunchAgentService: LaunchAgentControlling {
static let plistName = "com.qiuyuzhou.ShadowsocksX-NG2.agent.plist"
diff --git a/ShadowsocksX-NG2/LaunchAgent/com.qiuyuzhou.ShadowsocksX-NG2.agent.plist b/ShadowsocksX-NG2/LaunchAgent/com.qiuyuzhou.ShadowsocksX-NG2.agent.plist
index 746b222b..8c54a042 100644
--- a/ShadowsocksX-NG2/LaunchAgent/com.qiuyuzhou.ShadowsocksX-NG2.agent.plist
+++ b/ShadowsocksX-NG2/LaunchAgent/com.qiuyuzhou.ShadowsocksX-NG2.agent.plist
@@ -11,7 +11,7 @@
com.qiuyuzhou.ShadowsocksX-NG2.agent
ProgramArguments
- Contents/MacOS/ShadowsocksX-NG2Agent
+ MacOS/ShadowsocksX-NG2Agent
ThrottleInterval
2
diff --git a/ShadowsocksX-NG2/project.yml b/ShadowsocksX-NG2/project.yml
index 2bab6ac2..60a5d4d0 100644
--- a/ShadowsocksX-NG2/project.yml
+++ b/ShadowsocksX-NG2/project.yml
@@ -24,8 +24,8 @@ targets:
# 领域核心:配置目录树、凭据引用与持久化(spec #21 D3/D5)
- path: Domain
# LaunchAgent 注册清单:SMAppService.agent(plistName:) 从 bundle 内
- # Contents/Library/LaunchAgents/ 读取;ProgramArguments 用 bundle 相对路径
- # (spec #21 D2,issue #27)。
+ # Contents/Library/LaunchAgents/ 读取;ProgramArguments 用 Contents/
+ # 相对路径(launchd 按注册 app 的 Contents/ 解析,spec #21 D2,issue #27)。
- path: LaunchAgent/com.qiuyuzhou.ShadowsocksX-NG2.agent.plist
buildPhase:
copyFiles:
@@ -97,7 +97,7 @@ targets:
- ShadowsocksX-NG2Tests
dependencies:
# 代理运行时 wrapper(BundleProgram,spec #21 D2):以独立可执行文件装入
- # Contents/MacOS,由 LaunchAgent plist 以 bundle 相对路径引用。
+ # Contents/MacOS,由 LaunchAgent plist 以 Contents/ 相对路径引用。
- target: ShadowsocksX-NG2Agent
copy:
destination: wrapper