When I declare my main activity in this maner:
Your class name isn't com.package.name.MyActivity, it's com.package.name.general.MyActivity.
An easy way to avoid this mistake is to create your new Intent using a class instead of a package name. You can use auto-complete to fill in the right class.
You say you don't want to create the Intent by specifying the class. I wonder why not -- I think it's a good way to go.