데이터베이스에 더미 데이터를 채우는 Java 클래스를 실행하려고합니다. 일식에서는 마우스 오른쪽 버튼을 클릭하여 Java 프로그램으로 실행하면됩니다. 문제는 젠킨스가 그것을 만들고 싶습니다. 명백한 해결책은 클래스 패스에 필요한 모든 것을 넣으려고 maven을 사용하여 클래스를 실행하는 것입니다.매개 변수가 지정된 경우 maven에서 java 클래스를 실행하십시오.
이 같은 http://mojo.codehaus.org/exec-maven-plugin/을 시도:
<profile>
<id>populatedb</id>
<activation>
<activeByDefault>false</activeByDefault>
<property>
<name>populatedb</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<phase>install</phase>
<goals>
<goal>java</goal>
</goals>
</execution>
</executions>
<configuration>
<mainClass>com.example.DatasetReader</mainClass>
</configuration>
</plugin>
</plugins>
</build>
</profile>
을하지만 프로젝트가도 구축하기 전에 나에게 ClassNotFound on com.example.DatasetReader
을 제공합니다. 나는이 명령을 사용
mvn clean install exec:java -Dpopulatedb -Dclasspath -Dexec.mainClass="com.example.DatasetReader"
나는 그것을 실행 단계로 뭔가를 할 생각을 ...하지만 아무것도처럼이없는 설치 후 ...
감사합니다! 추가 단계없이
는 "테스트"클래스가 혹시'가 DatasetReader' (즉 그것은'SRC/테스트/java' 아래) :
그래서 당신은 간단하게 다음과 같이 할 수 있도록 POM을 수정해야? – DB5
오류 로그를 추가 하시겠습니까? – DB5
aside 명령으로 exec-maven-plugin이 두 번 실행됩니다. 왜냐하면 프로필을 활성화했기 때문이며, 한 번 명시 적으로'exec : java' 목표를 호출했기 때문입니다. 'mvn clean install -Dpopulatedb'는 exec-maven-plugin을 pom의 프로필에 설정된대로 실행시키기에 충분해야합니다. – DB5