oracle - Grails - 如何在不放入/lib 的情况下将 Oracle jdbc jar 添加到类路径?

标签 oracle tomcat grails grails-2.2

我试图让我的 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.
') 

我应该澄清我的主要关注点——我不希望 jar 出现在最终 war 中。

如有任何帮助,我们将不胜感激。谢谢!

最佳答案

来自documentation :

grails.war.resources lets you do any extra processing you want before the WAR file is finally created.

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

grails.war.resources = { stagingDir ->
  delete(file:"${ stagingDir }/WEB-INF/lib/yourJarFile.jar")
}

关于oracle - Grails - 如何在不放入/lib 的情况下将 Oracle jdbc jar 添加到类路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26261130/

相关文章:

sql - 关于非内连接和内连接的帮助

java - 无法从 URL 位置导入 bean 定义 [classpath :applicationContext-core. xml]

tomcat - 在 tomcat 配置中设置 catalina opts

oracle - 破解 MV 日志以捕获变更数据

python - 问题构建 cx_Oracle - libclntsh.so.11.1 => 未找到

javascript - 制作一个包含 JS 对象的 Grails 域类?

grails - Groovy中的随机枚举截断

hibernate - Hibernate Jar与Grails 2.0.3发生冲突

mysql - Oracle Db 按两列分组

jakarta-ee - Tomcat 7 和 Java EE 6.0 javax.annotation.sql 包