热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

仅在使用repl时编译错误

仅当在repl中逐行输入代码时,我才会收到错误。当整个程序一次粘贴或从命令行粘贴时,它会起作用。classA{methoda(){

仅当在 repl 中逐行输入代码时,我才会收到错误。当整个程序一次粘贴或从命令行粘贴时,它会起作用。

class A {
method a () {
return 1;
}
}
class B {
method b () {
return 2;
}
}

这是错误声明:

===SORRY!=== Error while compiling:
Package 'B' already has a method 'b' (did you mean to declare a multi method?)

这个屏幕截图可能会更清楚。在左边我只是粘贴了代码,在右边我一行一行地输入了它。该代码仍在工作,但导致错误的原因是什么?

出于某种原因,我无法仅使用一个类来重现这一点。

回答

我可以重现那个错误,看起来像一个 REPL 错误,或者只是 REPL 不准备做的事情。例如,这也会引发异常:

class A {
method a() {
return 1;
}
};
class foo {
has $.bar = 3;
};

无论采用哪种形式,都可以直接粘贴或分段粘贴。永远是二等舱。这可能与EVAL工作方式有关,但我真的不知道。归根结底,REPL 只能带您到此为止,我不完全确定这是否在用例范围内。对于比一行更复杂的任何事情,您可能希望使用Comma或任何其他 IDE,例如 emacs;逗号还为评估表达式甚至语法提供帮助。



  • 我是通过“emacs”发现的。当前用于 emacs 的 `raku-mode` 似乎对 repl 没有太多支持。当我尝试加载文件时,它将整个缓冲区逐行发送到 repl。我用 `require` 为文件编写了一些东西,但是像 `eval-region` 之类的东西......将需要 repl 具有这种能力。





推荐阅读
  • 深入解析Spring框架中的双亲委派机制突破方法
    在探讨Spring框架中突破双亲委派机制的方法之前,首先需要了解类加载器的基本概念。类加载器负责将类的全限定名转换为对应的二进制字节流。每个类在被特定的类加载器加载后,其唯一性得到保证。然而,这种机制在某些场景下可能会限制灵活性,因此Spring框架提供了一些策略来突破这一限制,以实现更加动态和灵活的类加载。这些策略不仅能够提升系统的可扩展性,还能在复杂的运行环境中确保类的正确加载和管理。 ... [详细]
  • APKAnalyzer(1):命令行操作体验与功能解析
    在对apkChecker进行深入研究后,自然而然地关注到了Android Studio中的APK分析功能。将APK文件导入IDE中,系统会自动解析并展示其中各类文件的详细信息。官方文档提供了详细的命令行工具使用指南,帮助开发者快速上手。本文以一个RecyclerView的Adapter代理开源库为例,探讨了如何利用这些工具进行高效的APK分析。 ... [详细]
  • OpenCV 2.4.9 源码解析:级联分类器的错误率与尺寸分析 ... [详细]
  • 我正在使用 Ruby on Rails 构建个人网站。总体而言,RoR 是一个非常出色的工具,它提供了丰富的功能和灵活性,使得创建自定义页面变得既高效又便捷。通过利用其强大的框架和模块化设计,我可以轻松实现复杂的功能,同时保持代码的整洁和可维护性。此外,Rails 的社区支持也非常强大,为开发过程中遇到的问题提供了丰富的资源和解决方案。 ... [详细]
  • 本文介绍了Android动画的基本概念及其主要类型。Android动画主要包括三种形式:视图动画(也称为补间动画或Tween动画),主要通过改变视图的属性来实现动态效果;帧动画,通过顺序播放一系列预定义的图像来模拟动画效果;以及属性动画,通过对对象的属性进行平滑过渡来创建更加复杂的动画效果。每种类型的动画都有其独特的应用场景和实现方式,开发者可以根据具体需求选择合适的动画类型。 ... [详细]
  • 从零起步:使用IntelliJ IDEA搭建Spring Boot应用的详细指南
    从零起步:使用IntelliJ IDEA搭建Spring Boot应用的详细指南 ... [详细]
  • 深入解析 Django 中用户模型的自定义方法与技巧 ... [详细]
  • 【前端开发】深入探讨 RequireJS 与性能优化策略
    随着前端技术的迅速发展,RequireJS虽然不再像以往那样吸引关注,但其在模块化加载方面的优势仍然值得深入探讨。本文将详细介绍RequireJS的基本概念及其作为模块加载工具的核心功能,并重点分析其性能优化策略,帮助开发者更好地理解和应用这一工具,提升前端项目的加载速度和整体性能。 ... [详细]
  • Android目录遍历工具 | AppCrawler自动化测试进阶(第二部分):个性化配置详解
    终于迎来了“足不出户也能为社会贡献力量”的时刻,但有追求的测试工程师绝不会让自己的生活变得乏味。与其在家消磨时光,不如利用这段时间深入研究和提升自己的技术能力,特别是对AppCrawler自动化测试工具的个性化配置进行详细探索。这不仅能够提高测试效率,还能为项目带来更多的价值。 ... [详细]
  • 表面缺陷检测数据集综述及GitHub开源项目推荐
    本文综述了表面缺陷检测领域的数据集,并推荐了多个GitHub上的开源项目。通过对现有文献和数据集的系统整理,为研究人员提供了全面的资源参考,有助于推动该领域的发展和技术进步。 ... [详细]
  • 在开发Xamarin.Forms应用程序时,遇到了使用Entity Framework Core 3.0访问SQLite数据库时 `Database.MigrateAsync` 方法调用的问题。本文详细探讨了该问题的根源,并提供了一种有效的解决方案,确保数据库迁移能够顺利执行。此外,还介绍了如何配置和优化EF Core以提高应用性能和稳定性。 ... [详细]
  • 如何在Android应用中设计和实现专业的启动欢迎界面(Splash Screen)
    在Android应用开发中,设计与实现一个专业的启动欢迎界面(Splash Screen)至关重要。尽管Android设计指南对使用Splash Screen的态度存在争议,但一个精心设计的启动界面不仅能提升用户体验,还能增强品牌识别度。本文将探讨如何在遵循最佳实践的同时,通过技术手段实现既美观又高效的启动欢迎界面,包括加载动画、过渡效果以及性能优化等方面。 ... [详细]
  • 使用JDOM与DOM4J高效解析XML节点名称及值
    1、用JDOM解析节点名和节点值1、创建一个SAXBuilder对象2、创建一个输入流,将xml文件加载到文件中3.通过saxBuilder的方法,将输 ... [详细]
  • 本文为捷克马萨里克大学(作者:Bc.PavolLoffay)的硕士论文,共67页。本硕士论文的目标是开发一个开放源码的监控 ... [详细]
  • JetBrains RubyMine 2021 for Mac(Ruby代码编辑工具) v2021.2.2中文激活版
    内容介绍RubyMine2021一款全面的Ruby代码编辑器,可以识别动态语言细节。RubyMine破解版提供智能编码辅助,智能代码重构和深度代码分析功能。通过简单的项目配置,自动 ... [详细]
author-avatar
我是80初
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有