xtext: java.lang.SecurityException: class "org.eclipse.core.runtime.OperationCanceledException"'s signer information does not match signer information of other classes in the same package

Using xtext 2.14 and Eclipse Oxygen.

Running “mvn install” from projects the xtext wizards creates fails with a security error:

[ERROR] Failed to execute goal org.eclipse.xtend:xtend-maven-plugin:2.14.0:compile (default) on project org.sbelang.dsl: Execution default of goal org.eclipse.xtend:xtend-maven-plugin:2.14.0:compile failed: Unable to load the mojo 'compile' (or one of its required components) from the plugin 'org.eclipse.xtend:xtend-maven-plugin:2.14.0': com.google.inject.ProvisionException: Unable to provision, see the following errors:
[ERROR] 
[ERROR] 1) Error injecting constructor, com.google.inject.internal.util.$ComputationException: com.google.inject.internal.util.$ComputationException: java.lang.SecurityException: class "org.eclipse.core.runtime.OperationCanceledException"'s signer information does not match signer information of other classes in the same package
[ERROR]   at org.eclipse.xtend.maven.XtendCompile.<init>(Unknown Source)
[ERROR]   while locating org.eclipse.xtend.maven.XtendCompile
[ERROR]   at ClassRealm[plugin>org.eclipse.xtend:xtend-maven-plugin:2.14.0, parent: sun.misc.Launcher$AppClassLoader@3d4eac69] (via modules: org.eclipse.sisu.wire.WireModule -> org.eclipse.sisu.plexus.PlexusBindingModule)
[ERROR]   while locating org.apache.maven.plugin.Mojo annotated with @com.google.inject.name.Named(value=org.eclipse.xtend:xtend-maven-plugin:2.14.0:compile)
[ERROR] 
[ERROR] 1 error
[ERROR]       role: org.apache.maven.plugin.Mojo
[ERROR]   roleHint: org.eclipse.xtend:xtend-maven-plugin:2.14.0:compile

To reproduce, just create a new xtext project using the wizard and all-defaults EXCEP for the preferred build system option which should be set to maven.

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Reactions: 12
  • Comments: 116 (73 by maintainers)

Commits related to this issue

Most upvoted comments

workaround

				<plugin>
					<groupId>org.eclipse.xtend</groupId>
					<artifactId>xtend-maven-plugin</artifactId>
					<version>${xtextVersion}</version>
					<dependencies>
						<dependency>
						    <groupId>org.eclipse.platform</groupId>
						    <artifactId>org.eclipse.equinox.common</artifactId>
						    <version>3.10.0</version>
						</dependency>
					</dependencies>

alternatively you can pin the jdt version of your xtext release e.g.

				<plugin>
					<groupId>org.eclipse.xtend</groupId>
					<artifactId>xtend-maven-plugin</artifactId>
					<version>${xtextVersion}</version>
				<dependencies>
					<dependency>
						<groupId>org.eclipse.jdt</groupId>
						<artifactId>org.eclipse.jdt.core</artifactId>
						<version>3.13.102</version>
					</dependency>
					
					<dependency>
						<groupId>org.eclipse.jdt</groupId>
						<artifactId>org.eclipse.jdt.compiler.apt</artifactId>
						<version>1.3.110</version>
					</dependency>
					<dependency>
						<groupId>org.eclipse.jdt</groupId>
						<artifactId>org.eclipse.jdt.compiler.tool</artifactId>
						<version>1.2.101</version>
					</dependency>
				</dependencies>

For those still using 2.10.0 and unable to move due to JDK dependency:

<dependency>
    <groupId>org.eclipse.jdt</groupId>
    <artifactId>org.eclipse.jdt.core</artifactId>
    <version>3.10.0</version>
</dependency>
<dependency>
    <groupId>org.eclipse.jdt</groupId>
    <artifactId>org.eclipse.jdt.launching</artifactId>
    <version>3.10.0</version>
</dependency>
<dependency>
    <groupId>org.eclipse.jdt</groupId>
    <artifactId>org.eclipse.jdt.debug</artifactId>
    <version>3.10.1</version>
</dependency>

The problem will be solved in Xtext 2.15 by having a fixed dependency to emf and jdt and platform

doing that it helps to create a new maven project and using the plugin as dependency (and not as plugin) then you can use the dependency hierarchy view in eclipse

Yup, that’s the trick I usually use when working on Maven plugins… (Shame there’s no plugin equivalent to dependency:tree since the results can still end up being different! Something else for the never-ending todo list.)

doing that it helps to create a new maven project and using the plugin as dependency (and not as plugin) then you can use the dependency hierarchy view in eclipse

@kittaakos did you try to specify the jdt core and equinox versions as they were with 2.11