Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

लिक्विबेस ग्रेडल प्लगइन से अंतर उत्पन्न करने में असमर्थ

समाधान एक क्रमिक कार्य लिखना है जो liquibase diffChangeLog . को आमंत्रित करता है

एक liquibase.gradle बनाएं प्रोजेक्ट रूट निर्देशिका में फ़ाइल, लिक्विबेस-हाइबरनेट एक्सटेंशन जोड़ें और एक ग्रेडल कार्य लिखें जो liquibase diffChangeLog को आमंत्रित करता है आदेश।

configurations {
  liquibase
}

dependencies {
  liquibase group: 'org.liquibase.ext', name: 'liquibase-hibernate4', version: 3.5
}

//loading properties file.
Properties liquibaseProps = new Properties()
liquibaseProps.load(new FileInputStream("src/main/resources/liquibase-task.properties"))

Properties applicationProps = new Properties()
applicationProps.load(new FileInputStream("src/main/resources/application.properties"))

task liquibaseDiffChangelog(type: JavaExec) {
  group = "liquibase"


  classpath sourceSets.main.runtimeClasspath
  classpath configurations.liquibase
  main = "liquibase.integration.commandline.Main"

  args "--changeLogFile=" + liquibaseProps.getProperty('liquibase.changelog.path')+ buildTimestamp() +"_changelog.xml"
  args "--referenceUrl=hibernate:spring:" + liquibaseProps.getProperty('liquibase.domain.package') + "?dialect=" + applicationProps.getProperty('spring.jpa.properties.hibernate.dialect')
  args "--username=" + applicationProps.getProperty('spring.datasource.username')
  args "--password=" + applicationProps.getProperty('spring.datasource.password')
  args "--url=" + applicationProps.getProperty('spring.datasource.url')
  args "--driver=com.mysql.jdbc.Driver"
  args "diffChangeLog"
}

def buildTimestamp() {
  def date = new Date()
  def formattedDate = date.format('yyyyMMddHHmmss')
  return formattedDate
}

नोट:मैंने लिक्विबेस कमांड में तर्क पारित करने के लिए गुण फ़ाइलों का उपयोग किया है, आप सीधे मान जोड़ सकते हैं, लेकिन यह एक अच्छा अभ्यास नहीं होगा।

इसके बाद, आपको liquibase.gradle . लागू करना होगा प्रोजेक्ट के build.gradle . के भीतर से फ़ाइल करें फ़ाइल। और लिक्विबेस निर्भरता जोड़ें

apply from: 'liquibase.gradle'
//code omitted
dependencies {
    compile (group: 'org.liquibase', name: 'liquibase-core', version: "3.4.2")
}

इस चरण के बाद लिक्विबेस पूरी तरह से सेटअप हो जाएगा।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. (आईपी या डोमेन नाम) पर MySQL सर्वर से कनेक्ट नहीं हो सकता

  2. PDO और MySQL IN/NOT IN प्रश्नों के लिए उचित प्रारूप

  3. उन सभी डेटा का चयन कैसे करें जिनकी इनपुट सरणी मिली और mysql में नहीं मिली

  4. PHP/MySQL - SQL सिंटैक्स त्रुटि?

  5. पीडीओ मुक्त परिणाम