问题标签 [sql-maven-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
171 浏览

java - 如何禁用 sql-maven-plugin 文件复制到临时文件夹?

这是一个插件配置:

一切正常,但我在日志中看到:

有没有办法禁用复制?

0 投票
2 回答
4540 浏览

java - Maven:从 pom.xml 中的 settings.xml 读取加密密码

我正在尝试在我的 settings.xml 中使用加密密码。我的 pom.xml 中有一个连接到数据库的插件,使用 sql-maven-plugin:

如果我将密码作为纯文本放在我的 pom.xml 中,这可以正常工作,我想从我的 settings.xml 中读取这个密码,密码以这种方式加密:

我的 settings.xml 中有

我想以某种方式从“rms13-db-dev”中“读取”解码“密码”,我该如何实现?或者如果您有替代版本来实现这一点。

0 投票
1 回答
1182 浏览

java - Maven:在一个阶段运行插件两次,与另一个插件交错

对于我们的端到端测试,我们需要执行以下逻辑流程:

  1. 在数据库中创建和设置 e2e 模式(用户)(pre-integration-test
  2. 运行 Liquibase 以初始填充架构 ( pre-integration-test)
  3. 将 e2e 特定的测试数据添加到 DB 表 ( pre-integration-test)
  4. 启动 Tomcat ( pre-integration-test)
  5. integration-test使用 Protractor在 Tomcat ( ) 中运行 Web 应用程序
  6. 关闭 Tomcat ( post-integration-test)
  7. 清理数据库:删除模式 ( post-integration-test)

对于运行 SQL,sql-maven-plugin使用的是,但是此流程不适合常规 POM 布局:

  • SQL 插件必须在运行之前之后运行pre-integration-test两次liquibase-maven-plugin
  • SQL 插件必须在Tomcat 插件之前pre-integration-test运行,但它必须在 Tomcat 插件之后运行post-integration-test,以便在 Tomcat 关闭后删除数据库模式。

据我从Maven 文档中得出的结论,POM 中插件的顺序定义了同一阶段的执行顺序,并且在同一个 POM 中不能两次提及插件。

问题:除了编写一个会多次调用 Maven 的 shell 脚本之外,还有什么方法可以实现这一点?

PS发现了一个类似的未回答的问题

0 投票
1 回答
881 浏览

mysql - 如何使用 sql-maven-plugin 创建 SQL 转储

在运行 maven 测试之前和之后,我使用sql-maven-plugin来处理数据库。这些示例在删除/创建模式、填充方面非常简单。

如何使用此插件创建数据库的 SQL 转储?

0 投票
1 回答
3348 浏览

java - Maven surefire 插件,在构建生命周期中设置和获取系统属性

我正在尝试为集成测试提出一个并行的 Maven 测试执行。

在测试执行开始之前使用sql-maven-plugin创建一个测试数据库,结合 maven surefire 插件参数和并行执行,似乎是一个很好的开始方法。

我不明白的是如何使用surefire插件设置的系统属性,以及sql-maven-plugin(或任何其他插件)。我有一个失败的设置。

万无一失的插件配置:

sql-maven-plugin 配置:

外壳执行:

结果输出:

所以,看起来 ${databaseSchema} 没有填充,或者语法问题。我已经摆弄了,但是尽管看起来很容易并且应该这样做,但无法使其正常工作。

0 投票
1 回答
393 浏览

java - 使用 sql-maven-plugin 时属性无法正常工作

我正在使用 sql-maven-plugin 来执行一个简单的数据库测试用例。

首先,我将 2 行数据插入到表中(注意:我在执行此操作之前手动截断表)

然后我正在运行一个选择查询来检查是否插入了这 2 行。

要检查是否插入了这 2 行,我使用 sql-maven-plugin 的属性在文件中获取查询结果。

但是在运行 maven 之后,会创建输出文件,但它不包含任何数据。大小为 0 KB。

请建议我哪里出错或使用 maven-sql-plugin 在文件中获取查询输出的任何其他方法。

提前致谢

在下面添加了我的 pom.xml 的执行标签:-

0 投票
1 回答
225 浏览

maven - 使用带有 sql maven 插件的 ingres 驱动程序

我想使用 celerio从我们的数据库中生成代码。Celerio 使用sql-maven-plugin连接到数据库。但我无法解决 ingres 驱动程序的依赖关系。

这就是我在 celerio 项目的 pom.xml 中设置数据库连接的方式

但是当我尝试让 codegen 运行时>mvn -Pdb,metadata,gen,我得到了这个异常:

注意:我尝试使用 mysql 运行代码生成,我完全没有问题(但使用 mysql 不是选项,因为这只是一个测试 - 我们的客户数据库是一个 ingres 数据库)

0 投票
1 回答
2191 浏览

java - Maven 项目从依赖项运行 sql-maven-plugin 执行

如何配置我的 Mavenpom.xml和/或sql-maven-plugin以便我在我的依赖项中指定的单元测试相关 DB 执行在构建我的项目lib.example.jdbc时不会被执行?pom.xmlcom.example.project目前,当我mvn clean installpom.xmlfor上运行时,com.example.project我发现我的 SQL 数据库中有在lib.example.jdbc. 一个明显的解决方法是mysql.database在每个pom.xml文件中使用不同的属性,但我觉得更大的问题是库的(依赖)数据库执行正在主项目的测试阶段运行。我无法想象这是正确的,因为他们自己的测试和数据库执行可能有数百个pom.xml依赖项,这些依赖项在构建最终项目时不应该运行。

更新:Spring 注释是我在回答中发现的罪魁祸首,因此我更新了问题标签以反映这一点。

pom.xml以下是来自的相关示例lib.example.jdbc

这是来自的相关pom.xml示例com.example.project

0 投票
1 回答
383 浏览

oracle - sql-maven-plugin 中的 PL/SQL 脚本抛出无效的 SQL 语句

我正在尝试使用 sql-maven-plugin 更新我的物化视图,但它说

询问 :

即使在这上面花了几个小时,我也无法弄清楚这个问题。提前致谢。

我要执行的查询不是简单的 DDL 查询,而是 DBMS_MVIEW 包或其他包。其他答案有 DDL 的解决方案,但没有包的解决方案。

项目结构

在此处输入图像描述

0 投票
1 回答
38 浏览

java - 覆盖 Arquillian 测试的表名 + sql-maven-plugin

在我们的项目中,我们使用来自内部库的实体(我们使用将它们包含为 JAR)。类本身看起来像这样(无法在此处粘贴真实代码)。

在persistence.xml 中,我们包含一个映射文件,将表名映射到我们的约定。

一切正常。

现在我们使用 Arquillian 进行集成测试,并使用 sql-maven-plugin 为测试生成模式。现在我希望插件也生成一个视图。在 sql-maven-plugin 的配置中,我包含了一个创建视图的 sql 文件。此视图使用上面提到的表格(例如create or replace view EXAMPLE_VIEW as select * from REALNAME_MY_ENTITY)。但是当我尝试构建项目时,出现错误:Table "REALNAME_MY_ENTITY" not found;

我在 src/test/resources/META-INF/orm.xml 中获得了我的 orm.xml(映射文件),包括它到我的部署包和我的 test-persistence.xml

我们正在使用:

  • Java 8 + Java EE7
  • 打开 EJB v 7.0.4
  • Arquillian JUnit 核心 1.1.11.Final
  • sql-maven-plugin v1.5

如何配置使用映射表名称的 Arquillian 或 sql-maven-plugin?