Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google app engine 如何为Google云应用程序引擎提供额外的JDBC属性_Google App Engine_Jdbc_Quarkus - Fatal编程技术网

Google app engine 如何为Google云应用程序引擎提供额外的JDBC属性

Google app engine 如何为Google云应用程序引擎提供额外的JDBC属性,google-app-engine,jdbc,quarkus,Google App Engine,Jdbc,Quarkus,我正试图在Google App Engine上从Quarkus连接到PostgreSQL数据库。为此,必须提供额外的JDBC属性“socketFactory”和“cloudSqlInstance”。但我不知道如何在application.properties中指定这些 根据,有一个属性“quarkus.datasource.jdbc.additional jdbc properties”。但如果我尝试使用它,连接就会失败,我会在日志中看到: 提供了无法识别的配置密钥“quarkus.dataso

我正试图在Google App Engine上从Quarkus连接到PostgreSQL数据库。为此,必须提供额外的JDBC属性“socketFactory”和“cloudSqlInstance”。但我不知道如何在application.properties中指定这些

根据,有一个属性“quarkus.datasource.jdbc.additional jdbc properties”。但如果我尝试使用它,连接就会失败,我会在日志中看到:

提供了无法识别的配置密钥“quarkus.datasource.jdbc.additional jdbc properties”;它将被忽略

我相当肯定已经安装了所需的扩展

我尝试了其他几个属性,如前面提到的“quarkus.datasource.additional jdbc properties”,但没有成功。现在我已经没有办法尝试什么了。有没有办法指定所需的属性

application.properties:

quarkus.package.type=uber-jar

# datasource configuration
quarkus.datasource.db-kind = postgresql
quarkus.datasource.jdbc.url = jdbc:postgresql:///counter
quarkus.datasource.username = postgres
quarkus.datasource.password = <password>
quarkus.datasource.jdbc.additional-jdbc-properties=socketFactory=com.google.cloud.sql.postgres.SocketFactory,cloudSqlInstance=<project>:<region>:<instance>
quarkus.datasource.jdbc.max-size=16

# drop and create the database at startup (use `update` to only update the schema)
quarkus.hibernate-orm.database.generation=drop-and-create
quarkus.package.type=uber-jar
#数据源配置
quarkus.datasource.db-kind=postgresql
quarkus.datasource.jdbc.url=jdbc:postgresql:///counter
quarkus.datasource.username=postgres
quarkus.datasource.password=
quarkus.datasource.jdbc.additional jdbc properties=socketFactory=com.google.cloud.sql.postgres.socketFactory,cloudSqlInstance=::
quarkus.datasource.jdbc.max size=16
#在启动时删除并创建数据库(使用“更新”仅更新架构)
quarkus.hibernate orm.database.generation=拖放并创建
pom.xml:

<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.acme</groupId>
  <artifactId>getting-started</artifactId>
  <version>1.0.0-SNAPSHOT</version>
  <properties>
    <compiler-plugin.version>3.8.1</compiler-plugin.version>
    <maven.compiler.parameters>true</maven.compiler.parameters>
    <maven.compiler.source>8</maven.compiler.source>
    <maven.compiler.target>8</maven.compiler.target>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <quarkus-plugin.version>1.10.2.Final</quarkus-plugin.version>
    <quarkus.platform.artifact-id>quarkus-universe-bom</quarkus.platform.artifact-id>
    <quarkus.platform.group-id>io.quarkus</quarkus.platform.group-id>
    <quarkus.platform.version>1.10.2.Final</quarkus.platform.version>
    <surefire-plugin.version>2.22.1</surefire-plugin.version>
  </properties>
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>${quarkus.platform.group-id}</groupId>
        <artifactId>${quarkus.platform.artifact-id}</artifactId>
        <version>${quarkus.platform.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>com.google.cloud</groupId>
        <artifactId>libraries-bom</artifactId>
        <version>16.1.0</version>
        <type>pom</type>
        <scope>import</scope>
    </dependency>
    </dependencies>
  </dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>io.quarkus</groupId>
      <artifactId>quarkus-arc</artifactId>
    </dependency>
    <dependency>
      <groupId>io.quarkus</groupId>
      <artifactId>quarkus-resteasy</artifactId>
    </dependency>
    <dependency>
      <groupId>io.quarkus</groupId>
      <artifactId>quarkus-hibernate-orm</artifactId>
    </dependency>
    <dependency>
      <groupId>io.quarkus</groupId>
      <artifactId>quarkus-jdbc-postgresql</artifactId>
    </dependency>
    <dependency>
      <groupId>io.quarkus</groupId>
      <artifactId>quarkus-junit5</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>io.rest-assured</groupId>
      <artifactId>rest-assured</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <plugins>
      <plugin>
        <groupId>io.quarkus</groupId>
        <artifactId>quarkus-maven-plugin</artifactId>
        <version>${quarkus-plugin.version}</version>
        <extensions>true</extensions>
        <executions>
          <execution>
            <goals>
              <goal>build</goal>
              <goal>generate-code</goal>
              <goal>generate-code-tests</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>${compiler-plugin.version}</version>
      </plugin>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>${surefire-plugin.version}</version>
        <configuration>
          <systemPropertyVariables>
            <java.util.logging.manager>org.jboss.logmanager.LogManager</java.util.logging.manager>
            <maven.home>${maven.home}</maven.home>
          </systemPropertyVariables>
        </configuration>
      </plugin>
    </plugins>
  </build>
  <profiles>
    <profile>
      <id>native</id>
      <activation>
        <property>
          <name>native</name>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-failsafe-plugin</artifactId>
            <version>${surefire-plugin.version}</version>
            <executions>
              <execution>
                <goals>
                  <goal>integration-test</goal>
                  <goal>verify</goal>
                </goals>
                <configuration>
                  <systemPropertyVariables>
                    <native.image.path>${project.build.directory}/${project.build.finalName}-runner</native.image.path>
                    <java.util.logging.manager>org.jboss.logmanager.LogManager</java.util.logging.manager>
                    <maven.home>${maven.home}</maven.home>
                  </systemPropertyVariables>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
      <properties>
        <quarkus.package.type>native</quarkus.package.type>
      </properties>
    </profile>
  </profiles>
</project>

4.0.0
org.acme
开始
1.0.0-SNAPSHOT
3.8.1
真的
8.
8.
UTF-8
UTF-8
1.10.2.最终版本
夸克宇宙物质清单
夸克斯
1.10.2.最终版本
2.22.1
${quarkus.platform.group id}
${quarkus.platform.artifact id}
${quarkus.platform.version}
聚甲醛
进口
com.google.cloud
库bom表
16.1.0
聚甲醛
进口
夸克斯
夸克弧
夸克斯
夸克斯轻松
夸克斯
夸克冬眠虫
夸克斯
quarkus jdbc postgresql
夸克斯
quarkus-junit5
测试
放心吧
放心
测试
夸克斯
quarkus maven插件
${quarkus plugin.version}
真的
建造
生成代码
生成代码测试
maven编译器插件
${compiler plugin.version}
maven surefire插件
${surefire plugin.version}
org.jboss.logmanager.logmanager
${maven.home}
本地的
本地的
maven故障保护插件
${surefire plugin.version}
集成测试
验证
${project.build.directory}/${project.build.finalName}-runner
org.jboss.logmanager.logmanager
${maven.home}
本地的
试试这个:

quarkus.datasource.jdbc.additional-jdbc-properties.socketFactory=com.google.cloud.sql.postgres.SocketFactory
quarkus.datasource.jdbc.additional-jdbc-properties.socketFactoryArg=<project>:<region>:<instance>
quarkus.datasource.jdbc.additional jdbc properties.socketFactory=com.google.cloud.sql.postgres.socketFactory
quarkus.datasource.jdbc.additional jdbc properties.socketFactoryArg=::

PS:您不需要严格使用SocketFactory从GAE连接到CloudSQL。

您使用哪种版本的Quarkus?它已包含在Quarkus 1.10.1.10.2.Final中。根据POM(我使用了Quarkus网站上的“入门”应用程序并对其进行了扩展)您可以粘贴您的POM.xml吗?ThxAdded了pom.xml。@RHa这个问题仍然存在,但他们说它将在1.5.2版本中发布,所以我不知道它失败的原因。