先看如下代码:
class Test1 {
public Test1() {
println "TEST1"
}
}
class Test2 {
public Test2() {
println "TEST2"
}
static void main(args) {
new Test1()
}
}
此代码不论用groovy命令行还是用groovyConsole来运行都要出错,好像是
引用
groovy.lang.MissingMethodException: No signature of method: Test1.main() is applicable for argument types: ([Ljava.lang.String;) values: {[]}
at Test1.invokeMethod(Script0)
再来看看新的代码:
class Test2 {//含有static void main的方法的Test2必须要在第一个定义
public Test2() {
println "TEST2"
}
static void main(args) {
new Test1()
}
}
class Test1 {
public Test1() {
println "TEST1"
}
}
其中的含义不用多说了吧:
- 在groovy脚本里,不应该有定义多个static main方法的类
- 如果有定义多个类,那么应该将有main方法的类放到第一位 ;D
分享到:
相关推荐
Groovy是一种基于Java虚拟机(JVM)的动态编程语言,它的设计目标是结合静态语言的效率和动态语言的灵活性。Groovy与Java语法相似,但更为简洁,减少了程序员的编码工作量,尤其适合快速开发和脚本编写。 在开发...
- GroovyConsole是一个交互式的IDE,适合测试和学习Groovy代码,而GroovyShell允许在控制台环境下直接运行Groovy脚本。 以上内容仅为Groovy入门的基础知识,Groovy还有更多高级特性如AST转换、GroovyShell、 Grape...
通过阅读和分析这些源码,我们可以深入了解Groovy的内部工作原理,如何将Groovy脚本转化为字节码,以及如何与Java平台交互。 `lowernl4` 这个标签可能指的是Groovy对源代码的处理方式,比如它可能表示源代码被转换...
7. **Kotlin转换工具**:为了帮助开发者从Groovy脚本平滑过渡到Kotlin DSL,有一些工具可以辅助转换,例如 bernaferrari的GradleKotlinConverter项目(可能就是压缩包中的内容)。这些工具可以帮助自动化部分转换...
6. **GroovyShell和GroovyScriptEngine**:这两个类用于执行Groovy脚本,常用于测试和脚本环境中。 7. ** Grape**:Groovy的依赖管理机制,允许在运行时自动下载所需库。 8. **类别(Categories)**:允许在不修改...
JSAPI通过提供ScriptEngine接口,使得开发者能够轻松地调用不同脚本引擎,如JavaScript、Groovy或Rhino,执行脚本代码。以下是一个简单的示例,展示了如何使用JSAPI执行JavaScript脚本: ```java import javax....
要开始构建Java项目,首先需要创建一个目录结构,这通常包括`src/main/java`目录来存放源代码,以及一个`build.gradle`文件来定义构建脚本。在`src/main/java`下创建一个名为`com.example`的包,并在其中添加`Hello...
在`src/main/cpp`目录下创建一个名为`CMakeLists.txt`的文件,这是CMake的构建脚本。在其中,你需要指定源代码文件、库依赖等信息。例如: ```cmake cmake_minimum_required(VERSION 3.10.2) add_library( # 定义...
"groovy_training_2021-main"可能包含一系列的教程、示例代码、练习和解决方案,帮助学习者通过实际操作来巩固理论知识。参与这样的培训,开发者不仅可以提升个人技能,还能更好地适应现代Java生态系统中的Groovy...
4. `src/main/resources`:可能包含配置文件、静态资源等。 5. `src/test`:存放测试代码,确保应用功能正确。 此外,由于项目标签包含"JavaScript",我们可以推测项目可能还涉及到前端开发,使用JavaScript(可能...
- `Jenkinsfile`(Jenkins):定义Jenkins流水线的Groovy脚本。 6. **脚本和工具** - `scripts`:可能包含启动、停止、部署等操作的脚本。 - `.editorconfig`:代码风格和格式化规则的配置文件,适用于多种编辑...
#### 第一个Groovy脚本程序:HelloWorld ```groovy /** * HelloWorld演示脚本程序。 * @author 钱佳明 * @email qianjiaminghz@qq.com */ // 声明一个变量名称为hello且值为HelloWorld的字符串类型变量。 def ...
本文将深入探讨如何在iOS平台上利用RoboVM工具实现Groovy脚本的执行。RoboVM是一款开源的虚拟机,它允许开发者用Java或Groovy语言编写iOS应用程序,从而打破了iOS应用只能用Objective-C或Swift开发的传统。我们将...
Gradle基于Groovy语言,采用领域特定语言(DSL)进行构建脚本编写,使得配置更加简洁易读。Gradle的任务(Task)是构建过程中的最小执行单元,它们可以被组织成任务链,形成构建生命周期。 在构建一个web项目时,...
path "CMakeLists.txt" // 指向CMake构建脚本的路径 version "3.10.2" // 使用的CMake版本 } } } ``` 接下来,创建或更新`CMakeLists.txt`文件,该文件指导CMake如何构建你的原生代码。这个文件通常会包含以下...
在`src/main/webapp`下,你会找到Web应用的结构,如`WEB-INF`目录,其中包含`web.xml`(Servlet容器的部署描述符),以及静态资源和视图文件。 使用IDEA(IntelliJ IDEA)进行开发时,可以集成Gradle插件,方便地...
src = fileTree('src/main/js') // 指定要检查的 JS 源码目录 ignoreFiles = ['**/lib/**'] // 排除某些目录或文件 options = ['bitwise': true, 'eqeqeq': true] // 设置 JSHint 规则 } ``` 3. **运行检查**...
- `src/main/resources`:放置配置文件、静态资源等。 - `src/test/java`:测试代码所在目录。 - `application.properties`/`application.yml`:SpringBoot的配置文件,用于设置应用属性。 **Gradle常用命令** - `...
1. **Gradle构建脚本**:Gradle使用Groovy或Kotlin编写构建脚本(build.gradle),这些脚本定义了项目的构建过程,包括依赖管理、任务定义等。在这个项目中,`build.gradle`文件将包含Spring MVC和MyBatis的相关依赖...
Groovy结合了脚本语言的简洁性和灵活性,同时拥有静态类型的编译能力,这使得它成为开发人员进行快速原型设计、构建自动化任务以及编写服务器端应用程序的理想选择。"Prueba"这个标题可能是项目或代码库的名称,暗示...