有没有像python的交互式REPL模式,但对于Java?因此,我可以,例如,键入InetAddress.getAllByName( localHostName )一个窗口,并立即获得结果,没有所有这些公共静态void nightmare()的事情?
我正在寻找一个可以用来测试Java代码片段的REPL shell.桌面应用程序或Web应用程序(如Groovy Web控制台).理想情况下,常用的Java包如:
java.io.*
java.util.*
Run Code Online (Sandbox Code Playgroud)
应该自动导入,以便我可以从类复制和粘贴代码,而无需添加一堆导入.这样的事情存在吗?
根据前两个答案:maven dependencies groovy.我正在尝试使用来自org.codehaus.gmaven的GMaven-plugin,使用Maven编译混合Java 6 + Groovy项目.直到昨天我们使用的是旧1.6.0版本的Groovy(在我们最终完成它之后从未改变它),但由于1.7.0现在稳定,我认为我们会改用它.
如果只是那么简单......我现在遇到的问题似乎有两个方面:
Groovy 1.6以某种方式仍然被选为默认值.(如下面的stacktrace中所示)有谁知道如何解决上述两个问题,或者可以提供一个工作pom来编译与Maven Java 6代码混合的Groovy 1.7代码?
使用gmaven/groovy.maven/groovy.maven.gmaven编译旧版本的Groovy时,有很多令人困惑/矛盾/过时的文档,现在真的没有帮助.
作为参考,这是我的pom.xml和Maven -e输出的一部分:
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>1.7.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.gmaven</groupId>
<artifactId>gmaven-plugin</artifactId>
<version>1.2</version>
<dependencies>
<dependency>
<groupId>org.codehaus.gmaven.runtime</groupId>
<artifactId>gmaven-runtime-1.7</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>1.7.0</version>
</dependency>
</dependencies>
<executions>
<execution>
<goals>
<goal>generateStubs</goal>
<goal>compile</goal>
<goal>generateTestStubs</goal>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
Run Code Online (Sandbox Code Playgroud)
堆栈跟踪:
[INFO] ------------------------------------------------------------------------
[INFO] Building Client
[INFO] task-segment: [clean, package]
[INFO] ------------------------------------------------------------------------
[INFO] [clean:clean {execution: …Run Code Online (Sandbox Code Playgroud)