Running OpenMRS SDK errors with JDK 1.6

I am trying to use openmrs SDK for module development. I am following the instructions outlined [here][1]. I have installed the sdk successfully. The errors happen when I try to run one of the machine configured/setup without any issues. I go to the machine folder and run the following command.

$ mvn openmrs-sdk:run

The process fails with the following error.

WARNING: Error injecting: org.eclipse.jetty.maven.plugin.JettyRunWarMojo
java.lang.TypeNotPresentException: Type org.eclipse.jetty.maven.plugin.JettyRunWarMojo not present
	at org.sonatype.guice.bean.reflect.URLClassSpace.loadClass(URLClassSpace.java:109)
	at org.sonatype.guice.bean.reflect.NamedClass.load(NamedClass.java:45)
	at org.sonatype.guice.bean.reflect.AbstractDeferredClass.get(AbstractDeferredClass.java:45)
	at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:84)
	at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:52)
	at com.google.inject.internal.ProviderInternalFactory$1.call(ProviderInternalFactory.java:70)
	at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:100)
	at org.sonatype.guice.plexus.lifecycles.PlexusLifecycleManager.onProvision(PlexusLifecycleManager.java:138)
	at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:108)
	at com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:55)
	at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:68)
	at com.google.inject.internal.InternalFactoryToInitializableAdapter.get(InternalFactoryToInitializableAdapter.java:45)
	at com.google.inject.internal.InjectorImpl$3$1.call(InjectorImpl.java:965)
	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1011)
	at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:961)
	at com.google.inject.Scopes$1$1.get(Scopes.java:59)
	at org.sonatype.guice.bean.locators.LazyBeanEntry.getValue(LazyBeanEntry.java:83)
	at org.sonatype.guice.plexus.locators.LazyPlexusBean.getValue(LazyPlexusBean.java:49)
	at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:253)
	at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:245)
	at org.apache.maven.plugin.internal.DefaultMavenPluginManager.getConfiguredMojo(DefaultMavenPluginManager.java:455)
	at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:92)
	at org.twdata.maven.mojoexecutor.MojoExecutor.executeMojo(MojoExecutor.java:94)
	at org.openmrs.maven.plugins.Run.execute(Run.java:113)
	at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
	at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
	at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
	at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
	at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
	at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
	at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
	at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: java.lang.UnsupportedClassVersionError: org/eclipse/jetty/maven/plugin/JettyRunWarMojo : Unsupported major.minor version 51.0
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClassCond(ClassLoader.java:637)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
	at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:386)
	at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
	at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)
	at org.sonatype.guice.bean.reflect.URLClassSpace.loadClass(URLClassSpace.java:101)
	... 44 more
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 38.487s
[INFO] Finished at: Tue Oct 13 08:27:37 EAT 2015
[INFO] Final Memory: 11M/81M
[INFO] ------------------------------------------------------------------------
[WARNING] The requested profile "OpenMRS" could not be activated because it does not exist.
[ERROR] Failed to execute goal org.openmrs.maven.plugins:openmrs-sdk-maven-plugin:2.0.3:run (default-cli) on project standalone-pom: Unable to execute mojo: Execution null of goal org.eclipse.jetty:jetty-maven-plugin:9.0.4.v20130625:run-war failed: Unable to load the mojo 'run-war' in the plugin 'org.eclipse.jetty:jetty-maven-plugin:9.0.4.v20130625' due to an API incompatibility: org.codehaus.plexus.component.repository.exception.ComponentLookupException: org/eclipse/jetty/maven/plugin/JettyRunWarMojo : Unsupported major.minor version 51.0
[ERROR] -----------------------------------------------------
[ERROR] realm =    plugin>org.eclipse.jetty:jetty-maven-plugin:9.0.4.v20130625
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
[ERROR] urls[0] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-maven-plugin/9.0.4.v20130625/jetty-maven-plugin-9.0.4.v20130625.jar
[ERROR] urls[1] = file:/Users/willa/.m2/repository/org/sonatype/sisu/sisu-inject-bean/2.1.1/sisu-inject-bean-2.1.1.jar
[ERROR] urls[2] = file:/Users/willa/.m2/repository/org/sonatype/sisu/sisu-guice/2.9.4/sisu-guice-2.9.4-no_aop.jar
[ERROR] urls[3] = file:/Users/willa/.m2/repository/org/codehaus/plexus/plexus-utils/2.0.6/plexus-utils-2.0.6.jar
[ERROR] urls[4] = file:/Users/willa/.m2/repository/org/sonatype/aether/aether-util/1.11/aether-util-1.11.jar
[ERROR] urls[5] = file:/Users/willa/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.14/plexus-interpolation-1.14.jar
[ERROR] urls[6] = file:/Users/willa/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar
[ERROR] urls[7] = file:/Users/willa/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar
[ERROR] urls[8] = file:/Users/willa/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
[ERROR] urls[9] = file:/Users/willa/.m2/repository/org/apache/maven/plugin-tools/maven-plugin-tools-api/3.1/maven-plugin-tools-api-3.1.jar
[ERROR] urls[10] = file:/Users/willa/.m2/repository/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar
[ERROR] urls[11] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-util/9.0.4.v20130625/jetty-util-9.0.4.v20130625.jar
[ERROR] urls[12] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-webapp/9.0.4.v20130625/jetty-webapp-9.0.4.v20130625.jar
[ERROR] urls[13] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-xml/9.0.4.v20130625/jetty-xml-9.0.4.v20130625.jar
[ERROR] urls[14] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-servlet/9.0.4.v20130625/jetty-servlet-9.0.4.v20130625.jar
[ERROR] urls[15] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-jaas/9.0.4.v20130625/jetty-jaas-9.0.4.v20130625.jar
[ERROR] urls[16] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-security/9.0.4.v20130625/jetty-security-9.0.4.v20130625.jar
[ERROR] urls[17] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-plus/9.0.4.v20130625/jetty-plus-9.0.4.v20130625.jar
[ERROR] urls[18] = file:/Users/willa/.m2/repository/org/eclipse/jetty/orbit/javax.transaction/1.1.1.v201105210645/javax.transaction-1.1.1.v201105210645.jar
[ERROR] urls[19] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-jndi/9.0.4.v20130625/jetty-jndi-9.0.4.v20130625.jar
[ERROR] urls[20] = file:/Users/willa/.m2/repository/org/eclipse/jetty/orbit/javax.mail.glassfish/1.4.1.v201005082020/javax.mail.glassfish-1.4.1.v201005082020.jar
[ERROR] urls[21] = file:/Users/willa/.m2/repository/org/eclipse/jetty/orbit/javax.activation/1.1.0.v201105071233/javax.activation-1.1.0.v201105071233.jar
[ERROR] urls[22] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-server/9.0.4.v20130625/jetty-server-9.0.4.v20130625.jar
[ERROR] urls[23] = file:/Users/willa/.m2/repository/org/eclipse/jetty/orbit/javax.servlet/3.0.0.v201112011016/javax.servlet-3.0.0.v201112011016.jar
[ERROR] urls[24] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-http/9.0.4.v20130625/jetty-http-9.0.4.v20130625.jar
[ERROR] urls[25] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-io/9.0.4.v20130625/jetty-io-9.0.4.v20130625.jar
[ERROR] urls[26] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-jmx/9.0.4.v20130625/jetty-jmx-9.0.4.v20130625.jar
[ERROR] urls[27] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-annotations/9.0.4.v20130625/jetty-annotations-9.0.4.v20130625.jar
[ERROR] urls[28] = file:/Users/willa/.m2/repository/org/eclipse/jetty/orbit/javax.annotation/1.1.0.v201108011116/javax.annotation-1.1.0.v201108011116.jar
[ERROR] urls[29] = file:/Users/willa/.m2/repository/org/eclipse/jetty/orbit/org.objectweb.asm/3.1.0.v200803061910/org.objectweb.asm-3.1.0.v200803061910.jar
[ERROR] urls[30] = file:/Users/willa/.m2/repository/org/eclipse/jetty/websocket/websocket-server/9.0.4.v20130625/websocket-server-9.0.4.v20130625.jar
[ERROR] urls[31] = file:/Users/willa/.m2/repository/org/eclipse/jetty/websocket/websocket-common/9.0.4.v20130625/websocket-common-9.0.4.v20130625.jar
[ERROR] urls[32] = file:/Users/willa/.m2/repository/org/eclipse/jetty/websocket/websocket-api/9.0.4.v20130625/websocket-api-9.0.4.v20130625.jar
[ERROR] urls[33] = file:/Users/willa/.m2/repository/org/eclipse/jetty/websocket/websocket-client/9.0.4.v20130625/websocket-client-9.0.4.v20130625.jar
[ERROR] urls[34] = file:/Users/willa/.m2/repository/org/eclipse/jetty/websocket/websocket-servlet/9.0.4.v20130625/websocket-servlet-9.0.4.v20130625.jar
[ERROR] urls[35] = file:/Users/willa/.m2/repository/org/eclipse/jetty/jetty-jsp/9.0.4.v20130625/jetty-jsp-9.0.4.v20130625.jar
[ERROR] urls[36] = file:/Users/willa/.m2/repository/org/eclipse/jetty/orbit/javax.servlet.jsp/2.2.0.v201112011158/javax.servlet.jsp-2.2.0.v201112011158.jar
[ERROR] urls[37] = file:/Users/willa/.m2/repository/org/eclipse/jetty/orbit/org.apache.jasper.glassfish/2.2.2.v201112011158/org.apache.jasper.glassfish-2.2.2.v201112011158.jar
[ERROR] urls[38] = file:/Users/willa/.m2/repository/org/eclipse/jetty/orbit/javax.servlet.jsp.jstl/1.2.0.v201105211821/javax.servlet.jsp.jstl-1.2.0.v201105211821.jar
[ERROR] urls[39] = file:/Users/willa/.m2/repository/org/eclipse/jetty/orbit/org.apache.taglibs.standard.glassfish/1.2.0.v201112081803/org.apache.taglibs.standard.glassfish-1.2.0.v201112081803.jar
[ERROR] urls[40] = file:/Users/willa/.m2/repository/org/eclipse/jetty/orbit/javax.el/2.2.0.v201303151357/javax.el-2.2.0.v201303151357.jar
[ERROR] urls[41] = file:/Users/willa/.m2/repository/org/eclipse/jetty/orbit/com.sun.el/2.2.0.v201303151357/com.sun.el-2.2.0.v201303151357.jar
[ERROR] urls[42] = file:/Users/willa/.m2/repository/org/eclipse/jetty/orbit/org.eclipse.jdt.core/3.8.2.v20130121/org.eclipse.jdt.core-3.8.2.v20130121.jar
[ERROR] Number of foreign imports: 1
[ERROR] import: Entry[import  from realm ClassRealm[maven.api, parent: null]]
[ERROR]
[ERROR] -----------------------------------------------------
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

I am using jetty to run openmrs core just fine (i.e “mvn jetty:run”) I wonder whether the version of jetty I am running currently might an issue.

Any ideas? [1]: https://wiki.openmrs.org/display/docs/OpenMRS+SDK?focusedCommentId=91062474&#comment-91062474

Willa, SDK requires JDK 1.7+. You must be running 1.6.

1 Like

Right Rafal I changed to JDK 1.7+ now it works. However I think it is worth mentioning that openmrs 1.9.x won’t run with JDK 1.8 so if anyone wants to run platform 1.9.x or earlier should strictly use JDK 1.7.

1 Like