It's because you don't have any configuration set for "mvn sql:execute".
You need to move any configuration you want for maven execution outside the
build lifecycle to the pluginManagement section
(build/pluginManagement/plugins/plugin/configuration instead of
build/plugins/plugin/configuration).

/Anders

On Mon, Feb 2, 2015 at 2:05 PM, 신상재 <phr...@naver.com> wrote:

>
> I set up sql-maven-plugin like this:
>
>
>
> <build>
>
> <plugins>
>
> <plugin>
>
> <groupId>org.codehaus.mojo</groupId>
>
> <artifactId>sql-maven-plugin</artifactId>
>
> <version>1.5</version>
>
> <dependencies>
>
> <dependency>
>
> <groupId>mysql</groupId>
>
> <artifactId>mysql-connector-java</artifactId>
>
> <version>${mysql.version}</version>
>
> </dependency>
>
> </dependencies>
>
> <configuration>
>
> <driver>com.mysql.jdbc.Driver</driver>
>
> <url>jdbc:mysql://localhost:3306/test</url>
>
> <username>scott</username>
>
> <password>tiger</password>
>
> </configuration>
>
> <executions>
>
> <execution>
>
> <id>drop-table</id>
>
> <phase>process-test-resources</phase>
>
> <goals>
>
> <goal>execute</goal>
>
> </goals>
>
> <configuration>
>
> <autocommit>true</autocommit>
>
> <srcFiles>
>
>
> <srcFile>${basedir}/src/test/sql/mysql/example/ddl/drop-bonus-table.sql</srcFile>
>
>
> <srcFile>${basedir}/src/test/sql/mysql/example/ddl/drop-salgrade-table.sql</srcFile>
>
>
> <srcFile>${basedir}/src/test/sql/mysql/example/ddl/drop-dept-table.sql</srcFile>
>
>
> <srcFile>${basedir}/src/test/sql/mysql/example/ddl/drop-emp-table.sql</srcFile>
>
> </srcFiles>
>
> <onError>continue</onError>
>
> </configuration>
>
> </execution>
>
> <execution>
>
> <id>create-table</id>
>
> <phase>process-test-resources</phase>
>
> <goals>
>
> <goal>execute</goal>
>
> </goals>
>
> <configuration>
>
> <autocommit>true</autocommit>
>
> <srcFiles>
>
>
> <srcFile>${basedir}/src/test/sql/mysql/example/ddl/create-bonus-table.sql</srcFile>
>
>
> <srcFile>${basedir}/src/test/sql/mysql/example/ddl/create-salgrade-table.sql</srcFile>
>
>
> <srcFile>${basedir}/src/test/sql/mysql/example/ddl/create-dept-table.sql</srcFile>
>
>
> <srcFile>${basedir}/src/test/sql/mysql/example/ddl/create-emp-table.sql</srcFile>
>
> </srcFiles>
>
> <onError>continue</onError>
>
> </configuration>
>
> </execution>
>
> <execution>
>
> <id>insert-data</id>
>
> <phase>process-test-resources</phase>
>
> <goals>
>
> <goal>execute</goal>
>
> </goals>
>
> <configuration>
>
> <autocommit>true</autocommit>
>
> <srcFiles>
>
>
> <srcFile>${basedir}/src/test/sql/mysql/example/dml/insert-bonus-table.sql</srcFile>
>
>
> <srcFile>${basedir}/src/test/sql/mysql/example/dml/insert-salgrade-table.sql</srcFile>
>
>
> <srcFile>${basedir}/src/test/sql/mysql/example/dml/insert-dept-table.sql</srcFile>
>
>
> <srcFile>${basedir}/src/test/sql/mysql/example/dml/insert-emp-table.sql</srcFile>
>
> </srcFiles>
>
> <onError>continue</onError>
>
> </configuration>
>
> </execution>
>
> </executions>
>
> </plugin>
>
> </plugins>
>
> </build>
>
>
>
>
>
> When I execute 'mvn test', sql executed like this:
>
>
>
> [INFO] --- sql-maven-plugin:1.5:execute (drop-table) @
> pte-webapp-prototype ---
>
> [INFO] Executing file:
> C:\Users\bomber\AppData\Local\Temp\drop-bonus-table.1339142444sql
>
> [INFO] Executing file:
> C:\Users\bomber\AppData\Local\Temp\drop-salgrade-table.182961079sql
>
> [INFO] Executing file:
> C:\Users\bomber\AppData\Local\Temp\drop-dept-table.1442040038sql
>
> [ERROR] Failed to execute:  ALTER TABLE DEPT DROP PRIMARY KEY
>
> [ERROR] com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Can't
> DROP 'PRIMARY'; check that column/key exists
>
> [INFO] Executing file:
> C:\Users\bomber\AppData\Local\Temp\drop-emp-table.1792844234sql
>
> [ERROR] Failed to execute:  ALTER TABLE EMP DROP FOREIGN KEY FK_DEPTNO
>
> [ERROR] com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Can't
> DROP 'FK_DEPTNO'; check that column/key exists
>
> [ERROR] Failed to execute:
>
>  ALTER TABLE EMP DROP PRIMARY KEY
>
> [ERROR] com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Can't
> DROP 'PRIMARY'; check that column/key exists
>
> [ERROR] Failed to execute:
>
>  DROP INDEX PK_EMP ON EMP
>
> [ERROR] com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Can't
> DROP 'PK_EMP'; check that column/key exists
>
> [INFO] 5 of 9 SQL statements executed successfully
>
> .....
>
>
>
>
>
> But when I execute 'mvn sql:execute', sql does not work at all:
>
>
>
> [INFO]
> ------------------------------------------------------------------------
>
> [INFO] Building pte-webapp-prototype Maven Webapp 1.1.0-SNAPSHOT
>
> [INFO]
> ------------------------------------------------------------------------
>
> [INFO]
>
> [INFO] --- sql-maven-plugin:1.5:execute (default-cli) @
> pte-webapp-prototype ---
>
> [INFO] 0 of 0 SQL statements executed successfully
>
> [INFO]
> ------------------------------------------------------------------------
>
> [INFO] BUILD SUCCESS
>
> [INFO]
> ------------------------------------------------------------------------
>
> [INFO] Total time: 1.598 s
>
>
>
>
>
>
>
> Why 'mvn test' is ok but 'mvn sql:execute' is not?
>
> Which part of my configuration is wrong?
>
>
>
>
>
>

Reply via email to