создать проект Grails из архетипа Maven - PullRequest
1 голос
/ 16 февраля 2011

Когда я пытаюсь создать проект Mavenized Grails 1.3.6 с использованием архетипа:

mvn archetype:generate -DarchetypeGroupId=org.grails 
-DarchetypeArtifactId=grails-maven-archetype -DarchetypeVersion=1.3.6 
-DgroupId=example -DartifactId=my-app 
-DarchetypeRepository=http://repo1.maven.org/maven2

Я получаю ошибку

[ОШИБКА] Не удалось выполнить цель org.apache.maven.plugins: maven-archetype-plugin: 2.0: генерировать (default-cli) в проекте standalone-pom: желаемый архетип не существует (org.grails: grails-maven-archetype: 1.3.6)

Я проверил хранилище и версия 1.3.6 существует.Более того, если я заменю версию 1.3.6 в приведенной выше команде на 1.3.2, она будет работать.

Ответы [ 3 ]

1 голос
/ 16 февраля 2011

Выполнить mvn archetype:generate (интерактивный режим) и выбрать опцию 286

286: удаленный -> grails-maven-archetype (архетип Maven для проектов Grails.)

В общем, у меня было гораздо больше проблем, чем решений с maven-архетипами: S.

0 голосов
/ 12 апреля 2012

Новый архетип Maven для Grails 2 будет доступен в ближайшее время.См MAVEN-162

0 голосов
/ 16 февраля 2011

Я не знаю, что происходит с вашей конкретной конфигурацией, но я выполнил точную команду, которую вы там перечислили, и она успешно скомпилирована. Так как я предполагаю, что это связано с вашим предыдущим вопросом о том, как указывать зависимости, я подозреваю, что вы больше заботитесь о содержимом файла pom, чем фактически выясняете, что происходит с архетипом, я выложу pom.xml файл, созданный для меня архетипом.

<?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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>example</groupId>
  <artifactId>my-app</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>

  <name>A custom grails project</name>
  <description>A custom grails project</description>
  <url>http://www.myorganization.org</url>

  <properties>
    <grails.version>1.3.6</grails.version>
  </properties>

  <dependencies>
    <dependency>
      <groupId>org.grails</groupId>
      <artifactId>grails-bootstrap</artifactId>
      <version>${grails.version}</version>
      <exclusions>
        <exclusion>
          <groupId>org.codehaus.gpars</groupId>
          <artifactId>gpars</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.codehaus.gant</groupId>
          <artifactId>gant_groovy1.7</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.gparallelizer</groupId>
          <artifactId>GParallelizer</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.codehaus.gant</groupId>
          <artifactId>gant_groovy1.6</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.apache.ant</groupId>
          <artifactId>ant</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.apache.ant</groupId>
          <artifactId>ant-launcher</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.apache.ivy</groupId>
          <artifactId>ivy</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

    <dependency>
      <groupId>org.grails</groupId>
      <artifactId>grails-crud</artifactId>
      <version>${grails.version}</version>
      <exclusions>
        <exclusion>
          <groupId>org.grails</groupId>
          <artifactId>grails-docs</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.apache.ant</groupId>
          <artifactId>ant</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.apache.ant</groupId>
          <artifactId>ant-launcher</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.springframework</groupId>
          <artifactId>spring-test</artifactId>
        </exclusion>
        <exclusion>
          <groupId>radeox</groupId>
          <artifactId>radeox</artifactId>
        </exclusion>
        <exclusion>
          <groupId>commons-digester</groupId>
          <artifactId>commons-digester</artifactId>
        </exclusion>
        <exclusion>
          <groupId>javax.persistence</groupId>
          <artifactId>persistence-api</artifactId>
        </exclusion>
        <exclusion>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

    <dependency>
      <groupId>org.grails</groupId>
      <artifactId>grails-gorm</artifactId>
      <version>${grails.version}</version>
      <exclusions>
        <exclusion>
          <groupId>org.apache.ant</groupId>
          <artifactId>ant</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.apache.ant</groupId>
          <artifactId>ant-launcher</artifactId>
        </exclusion>
        <exclusion>
          <groupId>commons-digester</groupId>
          <artifactId>commons-digester</artifactId>
        </exclusion>
        <exclusion>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.hibernate</groupId>
          <artifactId>hibernate</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.hibernate</groupId>
          <artifactId>hibernate-annotations</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.hibernate</groupId>
          <artifactId>hibernate-commons-annotations</artifactId>
        </exclusion>
        <exclusion>
          <groupId>antlr</groupId>
          <artifactId>antlr</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

    <dependency>
      <groupId>org.grails</groupId>
      <artifactId>grails-test</artifactId>
      <version>${grails.version}</version>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>jstl</artifactId>
      <version>1.1.2</version>
    </dependency>

    <dependency>
      <groupId>taglibs</groupId>
      <artifactId>standard</artifactId>
      <version>1.1.2</version>
    </dependency>

    <!-- Grails defaults to Ehache for the second-level Hibernate cache. -->
    <dependency>
      <groupId>org.hibernate</groupId>
      <artifactId>hibernate-ehcache</artifactId>
      <version>3.3.1.GA</version>
        <exclusions>
          <!-- See http://www.slf4j.org/faq.html#IllegalAccessError -->
          <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
          </exclusion>

          <!-- We are pulling in ehcache-core below -->
          <exclusion>
            <groupId>net.sf.ehcache</groupId>
            <artifactId>ehcache</artifactId>
          </exclusion>
        </exclusions>
    </dependency>

    <dependency>
      <groupId>net.sf.ehcache</groupId>
      <artifactId>ehcache-core</artifactId>
      <version>1.7.1</version>
      <exclusions>
        <exclusion>
          <groupId>org.slf4j</groupId>
          <artifactId>slf4j-api</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

    <!-- For ease of development and testing, we include the HSQLDB database. -->
    <dependency>
      <groupId>hsqldb</groupId>
      <artifactId>hsqldb</artifactId>
      <version>1.8.0.10</version>
    </dependency>

    <!-- Use Log4J for logging. This artifact also pulls in the Log4J JAR. -->
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.5.8</version>
      <scope>runtime</scope>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
      <version>1.5.8</version>
      <scope>runtime</scope>
    </dependency>

    <!-- Needed in the case of AOP usage -->
    <dependency>
      <groupId>org.aspectj</groupId>
      <artifactId>aspectjweaver</artifactId>
      <version>1.6.8</version>
    </dependency>

    <dependency>
      <groupId>org.aspectj</groupId>
      <artifactId>aspectjrt</artifactId>
      <version>1.6.8</version>
    </dependency>

    <dependency>
      <groupId>commons-codec</groupId>
      <artifactId>commons-codec</artifactId>
      <version>1.3</version>
    </dependency>

    <dependency>
      <groupId>commons-collections</groupId>
      <artifactId>commons-collections</artifactId>
      <version>3.2.1</version>
    </dependency>

    <dependency>
      <groupId>commons-pool</groupId>
      <artifactId>commons-pool</artifactId>
      <version>1.5.3</version>
    </dependency>

  </dependencies>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.16</version>
        <scope>runtime</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <repositories>
      <!-- Required to get hold of javassist:javassist -->
    <repository>
      <id>jboss.org</id>
      <name>jboss.org</name>
      <url>http://repository.jboss.com/maven2/</url>
    </repository>
  </repositories>

  <build>
    <pluginManagement />

    <plugins>
      <plugin>
        <groupId>org.grails</groupId>
        <artifactId>grails-maven-plugin</artifactId>
        <version>${grails.version}</version>
        <extensions>true</extensions>
        <executions>
          <execution>
            <goals>
              <goal>init</goal>
              <goal>maven-clean</goal>
              <goal>validate</goal>
              <goal>config-directories</goal>
              <goal>maven-compile</goal>
              <goal>maven-test</goal>
              <goal>maven-war</goal>
              <goal>maven-functional-test</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <source>1.5</source>
          <target>1.5</target>
        </configuration>
      </plugin>
    </plugins>
  </build>

  <profiles>
    <profile>
      <id>tools</id>
      <activation>
        <property>
          <name>java.vendor</name>
          <value>Sun Microsystems Inc.</value>
        </property>
      </activation>
      <dependencies>
        <dependency>
          <groupId>com.sun</groupId>
          <artifactId>tools</artifactId>
          <version>${java.version}</version>
          <scope>system</scope>
          <systemPath>${java.home}/../lib/tools.jar</systemPath>
        </dependency>
      </dependencies>
    </profile>
  </profiles>
</project>
...