Yon*_*oit 92 java read-eval-print-loop
有没有像python的交互式REPL模式,但对于Java?因此,我可以,例如,键入InetAddress.getAllByName( localHostName )一个窗口,并立即获得结果,没有所有这些公共静态void nightmare()的事情?
Osc*_*Ryz 64
您也可以使用Groovy Console.它是一个交互式控制台,您可以在其中执行所需操作.由于Groovy还包含来自核心java平台的类,因此您也可以使用这些类.
编辑
它看起来像这样:

小智 52
Eclipse有一个功能,虽然它不是一个循环.它被称为"剪贴簿页面".我假设这个类比应该是你有一个剪贴簿,你收集一些代码片段.
无论如何,为了使它工作,在Eclipse中打开一个项目(你的Scrapbook页面将与一个项目相关联 - Eclipse在项目拥有的东西时喜欢它).
然后:
现在你有一个剪贴簿页面.输入一些代码,就像这样:
System.out.println(System.getProperties());
然后用鼠标选择文本,或者按Control-U或从上下文菜单中选择"执行".代码将运行,输出将显示在控制台上.
您还可以键入表达式,选择它,然后从上下文菜单中选择"显示".它将评估表达式并打印其类型.例如,运行Display on 1 + 2将打印(int) 3.
bak*_*kal 28
BeanShell是一个小型,免费,可嵌入的Java源代码解释器,具有用Java编写的对象脚本语言功能.BeanShell动态执行标准Java语法,并使用常见的脚本编写方便性扩展它,例如松散类型,命令和方法闭包,如Perl和JavaScript中的那些.您可以交互式地使用BeanShell进行Java实验和调试,以及以新的方式扩展应用程序.脚本Java适用于各种各样的应用程序,包括快速原型设计,用户脚本扩展,规则引擎,配置,测试,动态部署,嵌入式系统,甚至Java教育.
http://www.beanshell.org/manual/syntax.html#Standard_Java_Syntax
Mat*_*ell 19
您可以使用Eclipse Scrapbook页面.
在Eclipse中创建一个Scrapbook页面.在您的项目中,New-> Other-> Scrapbook页面.
在文件中,输入一些文本,选择它并点击ctrl-U,然后你去.
要管理导入,请右键单击页面并选择"设置导入",您可以在其中选择导入包或单个类.这是持久的,并随页面一起保存.
Ron*_*ren 19
老问题,但现在有一个更好的答案(2013年5月) - java-REPL!它可以在github上获得,也可以在java-repl网站上直接进行快速一次性测试.
如果您获取git hub代码并运行ant以生成工件,则可以使用以下小脚本轻松使用:
#!/bin/sh
java -jar /home/rdahlgren/scripts/javarepl-dev.build.jar
Run Code Online (Sandbox Code Playgroud)
自从找到这个项目后,我可能每天使用它5次.请享用!
use*_*396 13
似乎没有人提到Java(6,7)带有一个名为的REPL控制台jrunscript.它与语言无关(因此可以与Jython,JRuby等一起使用).它默认为JavaScript(Rhino),默认情况下也捆绑在一起,与其他语言一样,您可以访问类路径上可用的所有包/对象.
spe*_*ool 11
Jython是一个python实现,它允许您检查Java对象并与之交互.
>>> from java.net import *
>>> InetAddress.getAllByName("google.com")
array(java.net.InetAddress,[google.com/209.85.171.100,
google.com/74.125.45.100,
google.com/74.125.67.100])
Run Code Online (Sandbox Code Playgroud)
aio*_*obe 11
一个名为JShell的REPL (由Oracle开发)已作为JDK 9的一部分发布.
只需下载JDK 9,即可启动bin/jshell.
Albert Latacz的 Java-REPL 效果很好.
您可以直接在浏览器中尝试:http: //www.javarepl.com/term.html
源代码在这里可用,它有一个不错的Intelli-J插件.
https://github.com/albertlatacz/java-repl
在常规控制台可以让你做到这一点.它实际上是试图测试groovy代码,但由于groovy是Java的超集,它也允许普通的Java东西.
我刚进入控制台:
InetAddress.getAllByName('localhost')
Run Code Online (Sandbox Code Playgroud)
并按CTRL-R,然后返回:
groovy> InetAddress.getAllByName('localhost')
Result: [localhost/127.0.0.1]
Run Code Online (Sandbox Code Playgroud)
Scala还提供交互式控制台.通过完全限定InetAddress,我能够使用它来获得问题中表达式的结果,如:
java.net.InetAddress.getAllByName("localhost")
Run Code Online (Sandbox Code Playgroud)
虽然JRuby,BeanShell,Julian Fleischer的REPL在那里,Albert Latacz的REPL似乎是最新的和活跃的.
尝试使用简单的类定义,工作正常.
$ java -jar javarepl.jar
Welcome to JavaREPL version 56 (Java HotSpot(TM) 64-Bit Server VM, Java 1.7.0_17)
Type in expression to evaluate.
Type :help for more options.
java> public class Test {
| public static void execute(String [] s) {
| System.out.println(54353 + s[0]);
| }}
java> Test.execute(new String [] {"234343"});
54353234343
java> System.exit(0);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21631 次 |
| 最近记录: |