目前,我正在测试Gradle作为Maven的替代品.在我的项目中,有一些第三方罐子,在任何(Maven)存储库中都不可用.我现在的问题是,如何管理它以将这些jar安装到我的本地.gradle存储库中.(如果可能,我不想使用本地Maven存储库,因为Gradle应该独立运行.)目前,由于缺少jar,我得到了很多例外.在Maven中,运行install命令非常简单.但是,我在Google上搜索类似于Maven安装命令的内容并不成功.有人有想法吗?
不幸的是,多行字符串上的stripIndent不起作用.附注:我的IDE代码样式首选项仅允许空格缩进(选项卡将替换为空格).但我认为这应该没有问题.
def s = """ This 
            is
            multiline
"""
println s.stripIndent()
不打印
This
is
multiline
正如所料.
输出是缩进.
This 
               is
               multiline
这里出了什么问题?
我在Eclipse Indigo SR2中使用Groovy 2.0.7.
在第一行中使用反斜杠(String continuation character)似乎消失了这个问题.但我不明白为什么这是必须的.
有人可以解释@TypeChecked和@CompileStatic之间的区别吗?
我用@TypeChecked读到了它,不可能在运行时添加新方法.还有哪些其他功能不允许?
@CompileStatic允许哪些Groovy功能?与groovyc和@CompileStatic相比,字节码是否与使用javac编译的相同?
我想将maven本地存储库另外用于maven远程存储库.我找到了JIRA-Issue http://issues.gradle.org/browse/GRADLE-1173,但是以这种方式调整我的gradle构建文件仍然找不到仅在本地maven存储库中可用的一些快照依赖项.我收到一个错误,即找不到Snapshot-Dependency.
是否可以拥有一个本地和一个远程maven存储库?
这是我的gradle构建文件的相关部分:
apply plugin: 'maven'
repositories {
    mavenLocal()
    maven {
        credentials {
            username "myusername"
            password "mypassword"
        }
        url "http://myremoterepository"
    }
}
我正在寻找一个用于gradle的eclipse ide集成.我从http://www.breskeby.com/downloads/gradle/eclipse/update/安装了gradle编辑器
但这远远不是我对ide整合的期望.它仅提供一些语法突出显示.没有自动完成,错误标记,任务列表等.
eclipse有没有真正的ide集成?
我的gradle构建输出消息
Deprecated: relying on packaging to define the extension of the main artifact is deprecated, and will not be supported in a future version of Gradle.
这意味着什么以及如何使警告消失?
我想在将war任务输出部署到存储库之前设置它的文件名.例如项目名称abc,最初它将导致abc-1.0.0-SNAPSHOT.war
但我希望应该有两个生成的war文件具有相同的内容:
def-1.0.0-SNAPSHOT.warghi-1.0.0-SNAPSHOT.war我想将我的Maven2构建文件切换为gradle.使用gradle从WSDL + XSD生成java类似乎没有进一步记录,没有gradle插件.我使用maven的以下配置并搜索gradle的等效项.
<!-- plugin for generating the classes from the WSDL+XSD -->
<plugin>
  <groupId>org.jvnet.jaxb2.maven2</groupId>
  <artifactId>maven-jaxb2-plugin</artifactId>
  <version>0.7.3</version>
  <executions>
    <execution>
      <id>app1-stub-generation</id>
      <goals>
        <goal>generate</goal>
      </goals>
      <configuration>
        <schemaDirectory>${project.build.directory}/wsdl/app1</schemaDirectory>
        <schemaIncludes>
          <include>*.xsd</include>
        </schemaIncludes>
        <generatePackage>org.app1.ws.generated</generatePackage>
        <generateDirectory>${project.build.directory}/generated-sources/app1</generateDirectory>
        <strict>true</strict>
      </configuration>
    </execution>
    <execution>
      <id>app2-v1-stub-generation</id>
      <goals>
        <goal>generate</goal>
      </goals>
      <configuration>
        <schemaDirectory>src/main/resources/wsdl</schemaDirectory>
        <schemaIncludes>
          <include>v1/*.xsd</include>
        </schemaIncludes>
        <generatePackage>org.app2.ws.generated.v1</generatePackage>
        <generateDirectory>${project.build.directory}/generated-sources/v1</generateDirectory>
        <strict>true</strict>
      </configuration>
    </execution>
    <execution>
      <id>app2-v2-stub-generation</id>
      <goals>
        <goal>generate</goal>
      </goals>
      <configuration>
        <schemaDirectory>src/main/resources/wsdl</schemaDirectory>
        <schemaIncludes>
          <include>v2/*.xsd</include>
        </schemaIncludes>
        <generatePackage>org.app2.ws.generated.v2</generatePackage>
        <generateDirectory>${project.build.directory}/generated-sources/v2</generateDirectory>
        <strict>true</strict>
      </configuration>
    </execution>
  </executions>
</plugin> 
我认为uploadArchives是一个由java插件提供的任务.在我的build.gradle中,我使用java插件:
apply plugin: 'java'
但是如果我gradle tasks在命令行上调用,我看不到uploadArchives任务.
即使没有gradle gradle tasks --all
uploadArchives任务列在gradle java插件文档中,请参阅http://www.gradle.org/java_plugin(表11).
我使用gradle版本1.0-milestone-6.
我可以gradle uploadArchives无错误地调用,但是没有列出任务.
我不明白为什么有一个java插件提供的任务'buildNeeded'.任务"构建"不解决问题吗?gradle文档说:
buildNeeded:执行项目的完整构建及其依赖的所有项目.
和
build:执行项目的完整版本.
是否应该"构建"任务编译并构建所有必要的东西?为什么要区分'build'和'buildNeeded'?