2014-11-16 5 views
1

У меня есть проект, состоящий из двух модулей - ядра и сети. Основной модуль содержит некоторые классы и сервисы домена, в то время как веб-модуль имеет контроллеры и другие персональные компьютеры. Если я поставлю контроллер в основной модуль, я смогу сделать grails run-app, а затем получить доступ к моему сервису напрямую через плагин REST в браузере Chrome. Но когда контроллеры находятся в веб-модуле, я не могу разрешить зависимость между этими модулями. В BuildConfig.groovy для веб-модуля у меня естьНе удается разрешить зависимость от доморощенного модуля

plugins { 
    // plugins for the build system only 
    build ":tomcat:7.0.53" 

    compile ":myapp-core:0.1-SNAPSHOT" 

    // plugins for the compile step 
    compile ":scaffolding:2.1.0" 
    compile ':cache:1.1.6' 
    compile ":asset-pipeline:1.9.6" 
    compile ":angular-annotate-asset-pipeline:1.1.2" 
    } 

BuildConfig для ядра выглядит следующим образом:

grails.project.class.dir = "target/classes" 
grails.project.test.class.dir = "target/test-classes" 
grails.project.test.reports.dir = "target/test-reports" 

grails.project.fork = [ 
// configure settings for compilation JVM, note that if you alter the Groovy version forked compilation is required 
// compile: [maxMemory: 256, minMemory: 64, debug: false, maxPerm: 256, daemon:true], 

// configure settings for the test-app JVM, uses the daemon by default 
test: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256, daemon:true], 
// configure settings for the run-app JVM 
run: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256, forkReserve:false], 
// configure settings for the run-war JVM 
war: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256, forkReserve:false], 
// configure settings for the Console UI JVM 
console: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256] 
] 

grails.project.dependency.resolver = "maven" // or ivy 
grails.project.dependency.resolution = { 
//legacyResolve true 
// inherit Grails' default dependencies 
inherits("global") { 
    // uncomment to disable ehcache 
    excludes 'ehcache' 
} 
log "warn" // log level of Ivy resolver, either 'error', 'warn', 'info', 'debug' or 'verbose' 
repositories { 
    grailsCentral() 
    mavenLocal() 
    mavenCentral() 
    // uncomment the below to enable remote dependency resolution 
    // from public Maven repositories 
    //mavenRepo "http://repository.codehaus.org" 
    //mavenRepo "http://download.java.net/maven/2/" 
    //mavenRepo "http://repository.jboss.com/maven2/" 
} 
dependencies { 
      compile 'com.hazelcast:hazelcast:3.3.2' 
} 

plugins { 

    // plugins for the build system only 
    build ":tomcat:7.0.52.1" 

    //plugin for consuming REST web services 
    compile ":rest-client-builder:1.0.3" 

    //plugin for consuming REST web services    
    build(":release:3.0.1") { 
     export = false 
    } 
    } 

}

Когда я бегу построить для Интернета модуль. Я всегда получаю следующие ошибки:

| Загрузка Grails 2.4.3 | Настройка пути к классам Ошибка | Исправить ошибки получения зависимостей: Не удалось найти артефакт org.grails.plugins: myapp-core: zip: 0.1-SNAPSHOT в grailsCentral (http://repo.grails.org/grails/plugins) (Используйте --stacktrace, чтобы увидеть полную трассу) Ошибка | Устранение ошибок получения зависимостей: Не удалось найти артефакт org.grails.plugins: myapp-core: zip: 0.1-SNAPSHOT в grailsCentral (гиперссылка на repo.grails.org удалена) (Используйте --stacktrace, чтобы увидеть полную трассировку) Ошибка | Устранение ошибок получения зависимостей: Не удалось найти артефакт org.grails.plugins: myapp-core: zip: 0.1-SNAPSHOT в grailsCentral (гиперссылка на repo.grails.org удалена) (Используйте --stacktrace, чтобы увидеть полную трассировку) Ошибка | Не удалось найти артефакт org.grails.plugins: myapp-core: zip: 0.1-SNAPSHOT в grailsCentral (гиперссылка на repo.grails.org удалена) | Запустите «зависимость от grails» для получения дополнительной информации.

И файл myapp-core.zip действительно не существует в репозитории .m2. Хотя он создает правильную цепочку каталогов, но содержит только файл resolver-status.properties. Я просмотрел документацию Grails и книгу Manning, но до сих пор не могу найти разрешение. В простой старой Java с maven это кусок торта, но в Grails, несмотря на все утверждения о том, как легко и просто, я бил головой о стену в течение недели.

Помогите мне, пожалуйста, пожалуйста.

ответ

1

Вы можете использовать grails.plugin.location, как упомянуто in the docs, или вы можете запустить maven-install, чтобы установить его локально.

Смежные вопросы