Launchctl says plist is invalid, plutil says it's OK

Solution 1:

The first few lines should be

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>

Your file (as well as the one in the linked answer) is missing the <plist version="1.0"> part.