Application servers allow to configure and register JDBC datasources with a JNDI naming service. This mode was supported in previous versions when deploying sonar.war instead of using the standalone application. It has led to a lot of maintainability issues. For this reason it's not supported anymore. The property sonar.jdbc.jndiName is removed. All the database settings must be defined in the file conf/sonar.properties.
The supported versions of the Maven Plugin org.codehaus.mojo:sonar-maven-plugin are :
These versions are automatically used when executing the goal sonar:sonar. The Maven Plugin must be upgraded only if its version has been fixed to 1.0-beta-1 (see pom files and hudson/jenkins configuration).
Some conflicts can occur if the database account has permissions to access multiple schemas on the same PostgreSQL database. In this case the new property sonar.jdbc.postgreSearchPath must be set to the schema name in the file conf/sonar.properties. Example :
The default engine used to detect copy/pastes is not PMD CPD anymore but Sonar CPD. This new engine brings new improvements like : more accurate blocks of duplications, less memory consumption, cross project duplications and consistent results whatever the JVM/OS.
The side-effect is that measures will be slightly different. For this reason it's possible to revert to PMD CPD by setting the property sonar.cpd.engine in General Settings.