0

我试图让我的 grails 应用程序使用 tomcat 在本地运行,但没有将 ojdbc6.jar 放在 /lib 中。我的 grails 应用程序部署到 Glassfish 并在服务器上运行良好(因为 ojdbc6.jar 在那里可用)。正如预期的那样,错误是:

Could not load JDBC driver class [oracle.jdbc.driver.OracleDriver]

(失败)方法 #1

我首先定制了我的 GGTS 运行配置以包含 VM 参数:

-cp :/somelocalpath/oracle-jdbc-drivers

但是错误仍然存​​在。

(失败)方法 #2

我目前正在寻找使用 jvmArgs 指向 jar 的本地版本。

grails.tomcat.jvmArgs = ["-cp:/somelocalpath/oracle-jdbc-drivers/ojdbc6.jar"]

然而,一场争吵会导致:

| Error Server failed to start: tomcat exited prematurely with code '1' (error output: 'Unrecognized option: -cp:/apps/glassfish3/oracle-jdbc-drivers/ojdbc6.jar
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
') 

我应该澄清我的主要关注点——我不希望罐子被包括在最后的战争中。

任何帮助,将不胜感激。谢谢!

4

1 回答 1

0

文档中:

grails.war.resources 允许您在最终创建 WAR 文件之前进行任何您想要的额外处理。

在您的情况下,您需要在构建配置中添加类似的内容以排除最终 WAR 的 Jar。

grails.war.resources = { stagingDir ->
  delete(file:"${ stagingDir }/WEB-INF/lib/yourJarFile.jar")
}
于 2014-10-08T18:23:28.090 回答