Hi,
I had gone through the same and my plist looks like

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.myname.test</string>
<key>ProgramArguments</key>
<array>
<string>/Volumes/WORKING/Vi2.app/test</string>
<string>--silent=no</string>
<string>--mode=fresh</string>
</array>
<key>QueueDirectories</key>
<array/>
<key>WatchPaths</key>
<array>
<string>/tmp/.launchMyDaemon</string>
</array>
<key>KeepAlive</key>
<false/>
</dict>
</plist>

But it is not working. Can anyone help

-Arun

On Sat, Feb 6, 2010 at 3:00 AM, Damien Sorresso <dsorresso@apple.com> wrote:
On Feb 5, 2010, at 1:23 PM, Arun wrote:
> Hi All,
>
> I am a newbie to launchd.
>
> I have a requirement to launch a system daemon whenever a file is created / modified.
> Also this daemon should not be launched multiple times, means even if the daemon crashes it should not be launched.
> Also this daemon shloud not be launched when the system starts.
>
> Can anyone help me in writing the launchd plist file satisfying the above.

$ man launchd.plist

See the WatchPaths and LaunchOnlyOnce keys, specifically.
--
Damien Sorresso
BSD Engineering
Apple Inc.