2013-02-15 3 views
0

친애하는 StackOverflow의 사용자를 방지하기 위해 내 프로젝트를 구성하는 방법메이븐 GWT (SmartGWT) : 긴 컴파일

내 큰 응용 프로그램이 예를 들어, 여러 개의 하위 프로젝트로, 받는다는에 의해 컴파일, SmartGWT 작성 분할 할

: 일반, 맞춤 위젯, 양식, 맞춤 데이터 소스, 사이트.

주요 아이디어는 다음과 같습니다. 일단 하위 프로젝트가 GWT로 컴파일되면 다른 하위 프로젝트에서 쉽게 컴파일을 건너 뛰기 위해 쉽게 사용할 수 있습니다. (내 영어 죄송합니다,하지만 당신은 내 지점을 찾은 것 같아)

예를 들어 하위 프로젝트 pom.xml은 다음과 같습니다

<module> 
    <inherits name="com.google.gwt.user.User"/> 
    <inherits name="com.smartgwt.SmartGwtNoTheme"/> 
    <source path="common"/> 
</module> 

부모 pom.xml은 다음과 같습니다 :

<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> 
    <parent> 
     <groupId>eu.nanobeauty</groupId> 
     <artifactId>nanobeauty</artifactId> 
     <version>1.0-SNAPSHOT</version> 
    </parent> 
    <artifactId>common</artifactId> 
    <packaging>jar</packaging> 
    <name>nanoBeauty :: Common</name> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.codehaus.mojo</groupId> 
       <artifactId>gwt-maven-plugin</artifactId> 
       <version>${gwt.version}</version> 
       <executions> 
        <execution> 
         <goals> 
          <goal>compile</goal> 
         </goals> 
        </execution> 
       </executions> 
      </plugin> 
     </plugins> 
    </build> 
</project> 

Common.gwt.xml이다

<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>eu.nanobeauty</groupId> 
    <artifactId>nanobeauty</artifactId> 
    <version>1.0-SNAPSHOT</version> 
    <packaging>pom</packaging> 
    <name>nanoBeauty :: Parent</name> 

    <modules> 
     <module>datasources</module> 
     <!-- multimodule : each form different project --> 
     <module>forms</module> 
     <!-- multimodule : each site different project --> 
     <module>sites</module> 
     <module>common</module> 
    </modules> 

    <properties> 
     <gwt.version>2.5.0</gwt.version> 
     <smartgwt.version>3.1</smartgwt.version> 
     <java.version>1.6</java.version> 
     <webappDirectory>${project.build.directory}/${project.build.finalName}</webappDirectory> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <maven.war.plugin.version>2.1.1</maven.war.plugin.version> 
    </properties> 

    <repositories> 
     <repository> 
      <id>smartclient</id> 
      <url>http://smartclient.com/maven2</url> 
     </repository> 
    </repositories> 

    <dependencies> 
     <dependency> 
      <groupId>com.smartgwt</groupId> 
      <artifactId>smartgwt</artifactId> 
      <version>${smartgwt.version}</version> 
     </dependency> 
     <dependency> 
      <groupId>com.google.gwt</groupId> 
      <artifactId>gwt-servlet</artifactId> 
      <version>${gwt.version}</version> 
      <scope>runtime</scope> 
     </dependency> 
     <dependency> 
      <groupId>com.google.gwt</groupId> 
      <artifactId>gwt-user</artifactId> 
      <version>${gwt.version}</version> 
      <scope>provided</scope> 
     </dependency> 
    </dependencies> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>2.3.2</version> 
       <configuration> 
        <source>${java.version}</source> 
        <target>${java.version}</target> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 

</project> 

답변

0

Google 검색 결과가 길어지면 솔루션 :

달성하고자하는 방식으로 수행 할 수 없습니다.

GWT는 JS 파일을 생성하기위한 소스 파일이 필요합니다. 메인 모듈 pom.xml은 ok이며 위의 예제 파일 .gwt.xml도 OK입니다. 변경 사항은 하위 모듈 pom.xml에만 있으며 목표는 resources입니다.

그래서 보이는 내가 설정 pom.xml에 필요한 모든 서브 모듈에 대한 유사 같은 :이 문서를 바탕으로

<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> 
    <parent> 
     <groupId>eu.nanobeauty</groupId> 
     <artifactId>nanobeauty</artifactId> 
     <version>1.0-SNAPSHOT</version> 
    </parent> 
    <artifactId>common</artifactId> 
    <packaging>jar</packaging> 
    <name>nanoBeauty :: Common</name> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.codehaus.mojo</groupId> 
       <artifactId>gwt-maven-plugin</artifactId> 
       <version>${gwt.version}</version> 
       <executions> 
        <execution> 
         <goals> 
          <goal>resources</goal> 
         </goals> 
        </execution> 
       </executions> 
      </plugin> 
     </plugins> 
    </build> 
</project> 

: