This is a very common error. To resolve this, under the core of the project in the pom.xml check and modify the <Sling-model-Packages> under the maven-plugin. If the package is not same as the package used then this error occurs. Hope this helps!
AEM project structure can be created using Lazybones or Maven Archetype. Eclipse IDE or Intellij IDEA can be used as the environment for working on the backend. The following links has the steps to create the project structure.1)http://www.aemcq5tutorials.com/tutorials/create-aem-project-structure-u...