mysql - 如何设置 GitHub 操作以使用 mysql 数据库运行 Spring Boot 项目?
问题描述
我正在尝试设置一个 GitHub Action,它能够测试我的 Spring Boot 项目是否在每次提交后编译。Spring 项目连接到 MySQL 数据库。我创建了以下工作流文件。
# This workflow will build a Java project with Gradle
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle
name: Java CI with Gradle
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build:
runs-on: ubuntu-latest
services:
mysql:
image: mysql:5.7
env:
MYSQL_DATABASE: jeremyuniversity
MYSQL_ALLOW_EMPTY_PASSWORD: yes
ports:
- 3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
steps:
- uses: actions/checkout@v2
- name: Set up JDK 1.14
uses: actions/setup-java@v1
with:
java-version: 14.0.2
env:
database.password:
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build with Gradle
run: ./gradlew build --stacktrace
然而,构建总是失败并出现以下错误。
JeremyUniversityApplicationTests > testGetStudents() FAILED
java.lang.IllegalStateException at DefaultCacheAwareContextLoaderDelegate.java:132
Caused by: org.springframework.beans.factory.BeanCreationException at BeanDefinitionValueResolver.java:342
Caused by: org.springframework.beans.factory.BeanCreationException at AbstractAutowireCapableBeanFactory.java:1794
Caused by: org.hibernate.service.spi.ServiceException at AbstractServiceRegistryImpl.java:275
Caused by: org.hibernate.HibernateException at DialectFactoryImpl.java:100
环境变量 database.password 用于在 application.properties 文件中设置数据库密码。是什么导致这个错误被抛出?
解决方案
推荐阅读
- typescript - haskell 等效于 typescript 映射函数
- reactjs - How to show the article details , i m facing problem
- r - rootsolve::multiroot 函数对角元素为零问题
- shell - 我需要在 shell 中用换行符替换文字 \n
- git - 我将如何 git 合并两个具有原始祖先但分歧的相同项目?
- c# - 仍然没有得到如何从 BackgroundWorker 返回值
- html - 我在 bootstrap 列中遇到 img 缩放问题
- node.js - 猫鼬删除错误的文件
- java - 遍历 HashMap 并将值放入 List
- javascript - 异步减少