小编Ric*_*kes的帖子

我的方法无法识别Java Enum类型

目前正在开发用于单一分配的代码气味检测器.我创建了一个抽象的CodeSmell类,它有两个具体的子类 - ClassLevelSmell和MethodLevelSmell.CodeSmell类具有SmellType类型的受保护字段.示例构造函数如下:

public ClassLevelSmell(ClassDefinition classDef, SmellType type){
    smellyClass = classDef;
    this.smell = type;
}
Run Code Online (Sandbox Code Playgroud)

SmellType是我定义的枚举,如下所示:

public enum SmellType {
LONG_CLASS, LONG_METHOD, PRIMITIVE_OBSESSION, LONG_PARAM_LIST}
Run Code Online (Sandbox Code Playgroud)

然后我有一个SmellDetector对象,有许多方法可以比较分析的类和方法的统计信息(例如它们的行数,基本声明的数量等),并在发现气味时创建一个新的CodeSmell对象.所以我的代码看起来像这样:

    private void detectLongClass(ClassDefinition classDef) {
    if(classDef.getNumLines() > 250){
        smells.add(new ClassLevelSmell(classDef, LONG_CLASS));
    }
}
Run Code Online (Sandbox Code Playgroud)

每个SmellDetector对象都有一个字段气味,一个CodeSmells的ArrayList.但是,当我尝试将SmellType LONG_CLASS传递给ClassLevelMethod的构造函数时,我在eclipse中收到编译器警告,告诉我"LONG_CLASS无法解析为变量".我在使用枚举类型时犯了一些错误吗?做什么?

java enums

2
推荐指数
1
解决办法
3747
查看次数

关闭Swing应用程序时整理

对Swing并不熟悉,我正在编写客户端 - 服务器UDP聊天应用程序.一切都运行正常,除了我希望我的客户端向服务器发送通知并在窗口关闭时关闭DatagramSocket.我在哪里放置代码以便在关闭窗口时执行?

java swing

2
推荐指数
1
解决办法
77
查看次数

Rails 3.2 - 使用远程MySQL数据库进行Heroku部署

在我的最后一年项目的rails应用程序上工作,我想使用heroku部署它(具有一个不起眼的子域以确保安全性),以便我的主管可以及时了解最新的发展.我的rails应用程序使用预先存在的架构/数据连接到远程MySQL数据库,而不是默认的sqlite数据库.我有我的database.yml设置正常,因为当我在本地运行我的应用程序时,它连接到远程数据库,并正常工作.但是,当我将它推送到heroku时,主页甚至不会打开.

我假设Heroku默认在本地查找你的数据库(PostGreSQL,如果我是正确的).如何配置我的应用程序,以便Heroku可以连接到我的远程数据库?如果Heroku无法做到这一点,那么有没有其他任何人可以推荐的简单且(最重要的)免费Rails托管服务?

heroku ruby-on-rails-3

2
推荐指数
1
解决办法
1183
查看次数

jQuery parseJSON错误

我正在尝试解析从我的Sinatra/DataMapper后端提供的JSON字符串,但是收到了错误$.parseJSON.违规行是:

var data = $.parseJSON('{"id":1249,"ssid":"asdf","mac_addr":"12:34:56:78:90:12","description":"<a href=\"http://www.google.com\">Google</a>","gps_lat":"53.345036547354","gps_lng":"-6.2576787407226675","location":"","authentication_method":"WPA2-PSK","password":"","xml_id":"default","access_network_area_id":37}');
Run Code Online (Sandbox Code Playgroud)

Firebug中出现的错误是:

SyntaxError: JSON.parse: expected ',' or '}' after property value in object
Run Code Online (Sandbox Code Playgroud)

因为我不能在我的生活中看到任何遗漏的','或'}'符号(除非ruby to_json方法被破坏,否则不应该存在),我假设这是一个逃避问题.但是我需要逃脱哪些角色来修复它?

编辑:

我的后端是Sinatra(Ruby),DataMapper作为ORM.JSON字符串在控制器中生成@data = model.to_json,并在视图中处理$.parseJSON('#{@data}').

jquery json

2
推荐指数
1
解决办法
4833
查看次数

使用RVM时,要求脚本被破坏

自从我开始使用rvm来管理我的ruby安装以来,一直遇到问题.每当我想要我编写的另一个类时,例如require 'filename',require - no such file to load 当我尝试运行我的脚本时,我会收到错误.如果我使用rvm use system它切换回我的系统ruby 再次工作,但我1.8.2作为我的系统ruby和我想在我的代码中使用的一些功能仅在1.9.*中可用,我可以通过rvm访问.我该如何解决这个问题?

ruby require rvm

1
推荐指数
1
解决办法
75
查看次数

Ruby - 私有方法的内联声明

目前正在编写一个类,其中我正在考虑私有的方法遍布整个代码.private我想在类的顶部做一个内联声明,而不是添加一行并复制粘贴它下面的所有内容private :foo, :bar.

但是,每当我尝试将参数声明为私有内联的方法时,我都会收到一条错误消息.举例来说,如果我有一个方法foo(bar, baz),并尝试声明它与私人private :foo(bar, baz)我得到的两个括号错误信息,希望kEND=替代.

如果我尝试声明它private :foo,我会被告知foo在我的代码中没有这样的方法.

如何在不发生这些错误的情况下做我想做的事情?

ruby access-specifier

1
推荐指数
1
解决办法
1480
查看次数

标签 统计

java ×2

ruby ×2

access-specifier ×1

enums ×1

heroku ×1

jquery ×1

json ×1

require ×1

ruby-on-rails-3 ×1

rvm ×1

swing ×1