ob-sql-parser
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>com.oceanbase</groupId> <artifactId>ob-sql-parser</artifactId> <version>1.4.1</version> </dependency>
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.oceanbase</groupId> <artifactId>ob-sql-parser</artifactId> <version>1.4.1</version> <name>ob-sql-parser</name> <url>https://github.com/oceanbase/odc/tree/main/libs/ob-sql-parser</url> <licenses> <license> <name>The Apache Software License, Version 2.0</name> <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url> </license> </licenses> <description> ob-sql-parser parses an SQL statement into a Java classes. </description> <developers> <developer> <name>Hang Yang</name> <url>https://github.com/yhilmare</url> <organization>OceanBase</organization> <timezone>8</timezone> </developer> <developer> <name>Xiao Zhang</name> <organization>OceanBase</organization> <timezone>8</timezone> </developer> <developer> <name>Yang Xiao</name> <organization>OceanBase</organization> <timezone>8</timezone> </developer> </developers> <scm> <connection>scm:git:https://github.com/oceanbase/odc.git</connection> <developerConnection>scm:git:https://github.com/oceanbase/odc.git</developerConnection> <url>https://github.com/oceanbase/odc</url> <tag>HEAD</tag> </scm> <properties> <!-- jdk and encoding --> <java.version>1.8</java.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <!-- dependencies version--> <maven-assembly-plugin.version>2.4</maven-assembly-plugin.version> <maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version> <maven-surefire-plugin.version>2.19.1</maven-surefire-plugin.version> <commons-lang3.version>3.12.0</commons-lang3.version> <lombok.version>1.18.10</lombok.version> <commons-collections4.version>4.4</commons-collections4.version> <log4j.version>2.18.0</log4j.version> <antlr4.version>4.9.1</antlr4.version> <!-- antlr config --> <antlr-base-package>com.oceanbase.tools.sqlparser</antlr-base-package> <antlr-generated-code-path>target/generated-sources/antlr/com/oceanbase/tools/sqlparser</antlr-generated-code-path> <!-- project constant configuration --> <root-project.basedir>${project.basedir}</root-project.basedir> <format.config.file>build/eclipse-java-oceanbase-style.xml</format.config.file> <formatter-maven-plugin.version>2.11.0</formatter-maven-plugin.version> <impsort-maven-plugin.version>1.3.2</impsort-maven-plugin.version> <plexus-utils.version>3.5.1</plexus-utils.version> <maven-javadoc-plugin.version>2.9.1</maven-javadoc-plugin.version> <maven-source-plugin.version>2.2.1</maven-source-plugin.version> <license-maven-plugin.version>3.0</license-maven-plugin.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <!-- upgrade to avoid vulnerability issues, version >= 4.13.1 --> <version>4.13.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>${commons-lang3.version}</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>${lombok.version}</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> <version>${commons-collections4.version}</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>${log4j.version}</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>${log4j.version}</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> <version>${log4j.version}</version> </dependency> <dependency> <groupId>org.antlr</groupId> <artifactId>antlr4</artifactId> <version>${antlr4.version}</version> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <exclusions> <exclusion> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> <exclusions> <exclusion> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> </exclusion> <exclusion> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.antlr</groupId> <artifactId>antlr4</artifactId> </dependency> </dependencies> <build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version>${maven-assembly-plugin.version}</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>${maven-compiler-plugin.version}</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>${maven-surefire-plugin.version}</version> </plugin> <plugin> <groupId>net.revelc.code.formatter</groupId> <artifactId>formatter-maven-plugin</artifactId> <version>${formatter-maven-plugin.version}</version> </plugin> <plugin> <groupId>net.revelc.code</groupId> <artifactId>impsort-maven-plugin</artifactId> <version>${impsort-maven-plugin.version}</version> <dependencies> <dependency> <groupId>org.codehaus.plexus</groupId> <artifactId>plexus-utils</artifactId> <version>${plexus-utils.version}</version> </dependency> </dependencies> </plugin> <plugin> <groupId>org.antlr</groupId> <artifactId>antlr4-maven-plugin</artifactId> <version>${antlr4.version}</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>${maven-javadoc-plugin.version}</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>${maven-source-plugin.version}</version> </plugin> <plugin> <groupId>com.mycila</groupId> <artifactId>license-maven-plugin</artifactId> <version>${license-maven-plugin.version}</version> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <executions> <execution> <id>attach-javadocs</id> <goals> <goal>jar</goal> </goals> <configuration> <additionalparam>-Xdoclint:none</additionalparam> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <executions> <execution> <id>attach-sources</id> <goals> <goal>jar-no-fork</goal> </goals> <phase>generate-sources</phase> <configuration> <includes> <include>**/*.java</include> </includes> <excludes> <exclude>${antlr-generated-code-path}</exclude> <exclude>**/*.g4</exclude> <exclude>**/*.tokens</exclude> <exclude>**/*.interp</exclude> </excludes> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>${java.version}</source> <target>${java.version}</target> <encoding>UTF-8</encoding> <annotationProcessorPaths> <path> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>${lombok.version}</version> </path> </annotationProcessorPaths> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <includes> <include>**/*Tests.java</include> <include>**/*Test.java</include> </includes> </configuration> </plugin> <!-- refer from https://code.revelc.net/formatter-maven-plugin/examples.html --> <plugin> <groupId>net.revelc.code.formatter</groupId> <artifactId>formatter-maven-plugin</artifactId> <configuration> <configFile>${root-project.basedir}/${format.config.file}</configFile> <lineEnding>LF</lineEnding> </configuration> <executions> <execution> <id>code-format</id> <goals> <goal>${formatter-goal}</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>net.revelc.code</groupId> <artifactId>impsort-maven-plugin</artifactId> <configuration> <groups>java.,javax.,org.,com.,com.alipay.</groups> <staticGroups>java,*</staticGroups> <removeUnused>true</removeUnused> </configuration> <executions> <execution> <id>sort-imports</id> <goals> <goal>${import-sort-goal}</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <configuration> <descriptors> <descriptor>src/main/assembly/assembly.xml</descriptor> </descriptors> <appendAssemblyId>false</appendAssemblyId> <finalName>${project.artifactId}-${project.version}</finalName> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>com.mycila</groupId> <artifactId>license-maven-plugin</artifactId> <configuration> <inlineHeader> <![CDATA[ Copyright (c) ${year} OceanBase. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ]]> </inlineHeader> <includes> <include>src/main/java/**/*.java</include> <include>src/test/java/**/*.java</include> </includes> <mapping> <java>SLASHSTAR_STYLE</java> </mapping> <properties> <year>2023</year> </properties> <strictCheck>true</strictCheck> </configuration> <executions> <execution> <id>update-file-header</id> <phase>generate-sources</phase> <goals> <goal>${license-plugin-goal}</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.antlr</groupId> <artifactId>antlr4-maven-plugin</artifactId> <executions> <execution> <id>oracle</id> <goals> <goal>antlr4</goal> </goals> <configuration> <visitor>true</visitor> <listener>true</listener> <arguments> <argument>-package</argument> <argument>${antlr-base-package}.oracle</argument> </arguments> <outputDirectory>${antlr-generated-code-path}/oracle</outputDirectory> <sourceDirectory>src/main/resources/oracle</sourceDirectory> </configuration> </execution> <execution> <id>ob-mysql-sql</id> <goals> <goal>antlr4</goal> </goals> <configuration> <visitor>true</visitor> <listener>true</listener> <arguments> <argument>-package</argument> <argument>${antlr-base-package}.obmysql</argument> </arguments> <outputDirectory>${antlr-generated-code-path}/obmysql</outputDirectory> <sourceDirectory>src/main/resources/obmysql/sql</sourceDirectory> </configuration> </execution> <execution> <id>ob-oracle-sql</id> <goals> <goal>antlr4</goal> </goals> <configuration> <visitor>true</visitor> <listener>true</listener> <arguments> <argument>-package</argument> <argument>${antlr-base-package}.oboracle</argument> </arguments> <outputDirectory>${antlr-generated-code-path}/oboracle</outputDirectory> <sourceDirectory>src/main/resources/oboracle/sql</sourceDirectory> </configuration> </execution> <execution> <id>ob-mysql-pl</id> <goals> <goal>antlr4</goal> </goals> <configuration> <visitor>true</visitor> <listener>true</listener> <arguments> <argument>-package</argument> <argument>${antlr-base-package}.obmysql</argument> </arguments> <outputDirectory>${antlr-generated-code-path}/obmysql</outputDirectory> <sourceDirectory>src/main/resources/obmysql/pl</sourceDirectory> </configuration> </execution> <execution> <id>ob-oracle-pl</id> <goals> <goal>antlr4</goal> </goals> <configuration> <visitor>true</visitor> <listener>true</listener> <arguments> <argument>-package</argument> <argument>${antlr-base-package}.oboracle</argument> </arguments> <outputDirectory>${antlr-generated-code-path}/oboracle</outputDirectory> <sourceDirectory>src/main/resources/oboracle/pl</sourceDirectory> </configuration> </execution> </executions> </plugin> </plugins> </build> <profiles> <profile> <!--local develop environment--> <id>local</id> <activation> <activeByDefault>true</activeByDefault> <property> <name>!ci</name> </property> </activation> <properties> <formatter-goal>format</formatter-goal> <import-sort-goal>sort</import-sort-goal> <license-plugin-goal>format</license-plugin-goal> </properties> </profile> <profile> <!--CI environment--> <id>ci</id> <activation> <activeByDefault>false</activeByDefault> <property> <name>ci</name> </property> </activation> <properties> <formatter-goal>validate</formatter-goal> <import-sort-goal>check</import-sort-goal> <license-plugin-goal>check</license-plugin-goal> </properties> </profile> </profiles> </project>