Shiro Plugin en conflicto con el marco de cuarzo en Grails
-
26-09-2019 - |
Pregunta
He estado trabajando marco de cuarzo en mis griales proyecto con lib llama cuarzo-all-1.7.3.
Ahora necesita instalar el plugin shiro a mi proyecto. Por lo tanto, cada vez que estoy instalando el plugin shiro a mi proyecto de su cada vez instalado con éxito ..
Pero de nuevo cuando estoy corriendo mi proyecto de nuevo se da un error de compilación de la siguiente manera:
[groovyc] org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
[groovyc] Compile error during compilation with javac.
[groovyc] ....scheduler\quartz\framework\CustomJDBCDelegate.java:46: com.securonix.application.scheduler.quartz.framework.CustomJDBCDelegate is not abstract and does not override abstract method updateSchedulerState(java.sql.Connection,java.lang.String,long,java.lang.String) in org.quartz.impl.jdbcjobstore.DriverDelegate
[groovyc] public class CustomJDBCDelegate implements DriverDelegate, StdJDBCConstants {
[groovyc] ^
Así que después de una larga mirada en shiro complemento he encontrado que tiene algunas dependencias con plugins. Porque una de la dependencia es shiro-cuarzo-1.0.0-incubating.jar. Así pues, ahora dentro de pom.xml he visto siguiente línea de código:
<dependency>
<groupId>quartz</groupId>
<artifactId>quartz</artifactId>
</dependency>
De acuerdo con nuestra línea de pom.xml, no hay ninguna etiqueta de versión con la dependencia de cuarzo, que los medios cada vez shiro a ser instalados en mi proyecto, a la vez Es la extracción de biblioteca más reciente de cuarzo es decir, 1.8.3 con Maven.
Y dentro de esa quartz 1.8.3
la updateSchedulerState método de CustomJDBCDelegate clase ha sido cambiado de versión quarts 1.7.3
.
Así que ahora problema es que no puedo cambiar quartz-all-1.7.3
en mi proyecto existente, y quería utilizar Shiro también el plugin en mi proyecto.
Así que debe haber alguna resolución para que shiro debe obtener la versión quartz-1.7.3
en lugar de la más reciente utilizando Maven.
Cualquier ayuda sería muy apreciada ...
Gracias ...
Solución
Tal vez me estoy haciendo esto mal, me refiero a usted algo como esto:?
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-quartz</artifactId>
<version>1.0.0-incubating</version>
<exclusions>
<exclusion>
<groupId>quartz</groupId>
<artifactId>quartz</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>1.7.3</version>
</dependency>
entonces $ mvn dependency:tree
[...]
[INFO] +- org.apache.shiro:shiro-quartz:jar:1.0.0-incubating:compile
[INFO] | \- org.apache.shiro:shiro-core:jar:1.0.0-incubating:compile
[INFO] | +- org.slf4j:slf4j-api:jar:1.5.6:compile
[INFO] | \- commons-beanutils:commons-beanutils:jar:1.7.0:compile
[INFO] \- org.quartz-scheduler:quartz:jar:1.7.3:compile
[INFO] \- commons-logging:commons-logging:jar:1.1:compile
[INFO] +- log4j:log4j:jar:1.2.12:compile
[INFO] +- logkit:logkit:jar:1.0.1:compile
[INFO] \- avalon-framework:avalon-framework:jar:4.1.3:compile