groovy.lang.GroovyRuntimeException:找不到与以下内容匹配的构造函数:java.io.File(File)
我已经在Groovy和Grails上工作了几个星期了 我刚刚遇到一个问题,任何文件创建命令如下:groovy.lang.GroovyRuntimeException:找不到与以下内容匹配的构造函数:java.io.File(File),file,groovy,constructor,File,Groovy,Constructor,我已经在Groovy和Grails上工作了几个星期了 我刚刚遇到一个问题,任何文件创建命令如下: void validate(FileToValidate) { try { DefaultImmutableModuleIdentifierFactory moduleIdentifierFactory = new DefaultImmutableModuleIdentifierFactory() def moduleDescripto
void validate(FileToValidate) {
try {
DefaultImmutableModuleIdentifierFactory moduleIdentifierFactory = new DefaultImmutableModuleIdentifierFactory()
def moduleDescriptorConverter = new IvyModuleDescriptorConverter(moduleIdentifierFactory)
def metadataFactory = new IvyMutableModuleMetadataFactory(moduleIdentifierFactory,null)
def repository = new DefaultExternalResourceRepository("repo", null, null, null, null, null,null)
def files = new java.io.File(FileToValidate)
URI uri = files.toURI()
def name = new ExternalResourceName(uri)
def parser = new IvyXmlModuleDescriptorParser(moduleDescriptorConverter, moduleIdentifierFactory,repository.resource(name ,true), metadataFactory)
DescriptorParseContext ivySettings = null //new DisconnectedDescriptorParseContext();
parser.parseMetaData(ivySettings, FileToValidate, true);
} catch (MetaDataParseException e) {
throw new GradleException("Invalid ivy descriptor file $FileToValidate", e);
}
}
我得到以下错误:
Caused by: groovy.lang.GroovyRuntimeException: Could not find matching constructor for: java.io.File(File)
您正在将
文件
传递给无效验证(FileToValidate){
然后尝试在这里创建一个新文件
def files = new java.io.File(FileToValidate)
您不需要这样做……只需使用FileToValidate
作为旁注,建议变量和参数使用小写字母,以避免混淆,所以
void validate(fileToValidate) {
在我的情况下,我只有一个路径,所以必须自己创建文件, 它有助于:
new java.io.File(FileToValidate.toString())
像弹簧一样
返回此路径的字符串表示形式