首页 文章

无法成功导入Groovy中的类?

提问于
浏览
1

我在一个名为business.groovy的文件中创建了一个名为 Vendor 和_2396020的两个类(我使用名称 business 创建了包) . 在同一文件夹中,我创建了另一个groovy代码,用于导入业务包并使用Vendor类属性(供应商是商务套餐中的一类) . 但是,当我尝试在该groovy脚本中为供应商创建一个对象时,它会抛出错误,指出:

/home/Anto/Groovy/pakg/Imports.groovy:2:无法解析类供应商@第2行第13列.def canoo = new Vendor()

我需要做什么?我哪里做错了?

这些是我创建的文件: business.groovy

package business
class Vendor {
public String name
public String product
public Address address = new Address()
}
class Address {
public String street, town, state
public int zip
}

impotTesting.groovy

import business.*
def canoo = new Vendor()
canoo.name = 'Canoo Engineering AG'
canoo.product = 'UltraLightClient (ULC)'

当我尝试使用 groovy importTesting 命令执行 importTesting.groovy 文件时,我得到了前面提到的错误!

3 回答

  • 3

    我建议你使用像AntGradle这样的构建工具,或像IntelliJ IDEA这样的IDE来控制你的类路径/编译/运行时需求 .

    编辑:它应该是这样的:

    baseDir/business/business.groovy
    baseDir/impotTesting.groovy
    

    您编译的类也应该类似于相同的目录结构:

    baseDir/business/business*.class  
    baseDir/impotTesting*.class
    

    然后你的baseDir应该被添加到CLASSPATH中 .

  • 0

    一种解决方案是创建包含相应类定义的Vendor.groovy和Address.groovy .

  • 0

    我在学习Groovy时遇到了类似的问题 . 为了使用 groovy 命令(使用Groovy 2.4.12测试)从命令行运行您的示例,您应该:

    • 按照@Andrey Adamovich的建议,遵循src文件的目录结构 . 因此,您的 .groovy 文件都应位于 business 文件夹中

    • 打开 cmd ,导航到 business 文件夹的父级,例如 src/main/groovy 为我的项目(我有结构 src/main/groovy/business ) .

    • 使用命令 groovy business/importTesting.groovy 执行脚本

相关问题