请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

groovy中有哪些简写?

buildscript { ScriptHandler scriptHandler ->
    scriptHandler.repositories { RepositoryHandler repositoryHandler ->
        repositoryHandler.jcenter()
        repositoryHandler.mavenCentral()
        
        // 写法1
        repositoryHandler.maven { MavenArtifactRepository mavenArtifactRepository ->
            mavenArtifactRepository.setUrl("xxxxUrl")
            mavenArtifactRepository.setName("name")
            mavenArtifactRepository.credentials { PasswordCredentials passwordCredentials ->
                passwordCredentials.setPassword("password")
                passwordCredentials.setUsername("userName")

            }
        }
		// 写法2
        repositoryHandler.maven {
            url 'xxxxUrl'
            name "name"
            credentials {
                password "password"
                userName "userName"
            }
        }

    }
    scriptHandler.dependencies {

    }
}

写法1和写法2为什么是等价的?

正在回答 回答被采纳积分+3

1回答

qndroid 2020-03-06 19:20:17

这个问题太大啦,groovy中的简写是非常多的,老师不能一一列举,就你举的例子来说,set方法 == 直接调用属性赋值。getXXX方法 == 直接属性值。闭包的参数类型也都是可以不写的。

0 回复 有任何疑惑可以回复我~
  • 提问者 qq_夜_71 #1
    简写时,为什么可以不需要对象来调用方法,例如 mavenArtifactRepository.setUrl("xxxxUrl"),而是  url 'xxxxUrl'。 老师能针对这种情况,给一个简单的demo 吗?
    回复 有任何疑惑可以回复我~ 2023-07-09 17:21:27
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信