Java 使用buildpack中的SQL驱动程序在Pivotal Cloud Foundry上部署具有多个数据源的应用程序

Java 使用buildpack中的SQL驱动程序在Pivotal Cloud Foundry上部署具有多个数据源的应用程序,java,mysql,cloud-foundry,Java,Mysql,Cloud Foundry,我有一个war应用程序,我希望用多个mysql服务部署和配置它。当应用程序绑定到一个mysql服务时,PCF会使用java buildpack下载的SQL驱动程序自动配置数据源。我想避免在war文件中打包驱动程序。有没有一种方法可以在不进行自动配置的情况下使用buildpack中的驱动程序 这似乎表明,如果服务使用“mysql”命名或标记,那么驱动程序将被下载并放置在类路径上: 用户提供的MariaDB或MySQL服务中必须有一个带有MariaDB或MySQL的名称或标记,以便MariaDB J

我有一个war应用程序,我希望用多个mysql服务部署和配置它。当应用程序绑定到一个mysql服务时,PCF会使用java buildpack下载的SQL驱动程序自动配置数据源。我想避免在war文件中打包驱动程序。有没有一种方法可以在不进行自动配置的情况下使用buildpack中的驱动程序

这似乎表明,如果服务使用“mysql”命名或标记,那么驱动程序将被下载并放置在类路径上:

用户提供的MariaDB或MySQL服务中必须有一个带有MariaDB或MySQL的名称或标记,以便MariaDB JDBC框架将自动下载JDBC驱动程序JAR并将其放置在类路径上

但是,我的两个服务都标记为“mysql”:

但当应用程序启动时,返回错误:

Caused by: java.lang.IllegalStateException: Cannot load driver class: com.mysql.jdbc.Driver
并且在转移应用程序时,不会下载JDBC驱动程序。

还列出了要执行的功能的要求:

存在单个绑定的MariaDB或MySQL服务,但未提供MariaDB或MySQL JDBC JAR

这里的关键词是single。这就是为什么在绑定了两个服务时它不起作用

我不确定你能做什么。当只有一个MySQL服务绑定,但不超过一个时,它就会工作。这就是定义的行为

未来的选择:提交一个Github问题并要求支持您的用例,将JDBC驱动程序打包到您的应用程序中

Caused by: java.lang.IllegalStateException: Cannot load driver class: com.mysql.jdbc.Driver