小编Cer*_*eal的帖子

Intellij突然抛出ClassNotFoundException

我在这里完全失败了.我有一个名为LenseProject的外部硬盘上的项目.里面LenseProject,我有.idea,lib,NativesSRC文件夹.我还有一些用于阅读的文本文件.

当我昨晚离开工作时,这一切都很好.今天早上来,我遇到了:

Exception in thread "main" java.lang.ClassNotFoundException: QuadTest
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:188)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:113) 
Run Code Online (Sandbox Code Playgroud)

QuadTest是主要类.

我认为可能有用的信息:

  • 如果我注释掉导入,我会收到相应的错误消息.(找不到符号等).

  • 我有9个依赖项,位于lib\lwjgl-2.9.0\jar中,它们在Project Structure - > Libraries中设置.

  • 该模块将LenseProject作为内容根,将SRC作为源文件夹.

  • 语言水平是7.0

  • 我将依赖项设置为在项目结构 - >模块 - >依赖项中导出.

  • 在编译器输出中,我将它设置为使用模块编译输出路径,因为继承项目编译输出路径给了我"无法启动编译:未为模块指定输出路径"LenseProject".在Configure Project中指定输出路径.

  • 我有VM选项-Djava.library.path=Natives.

  • 我可以通过命令提示符编译并运行程序没问题.

  • 今天早上我启动时,我错过了配置选项.我不得不再次设置SDK和库.

java compiler-errors intellij-idea

28
推荐指数
4
解决办法
5万
查看次数

切换语句格式

我现在对如何格式化switch语句感到矛盾.我看到了三个可行的选项,虽然我经常使用第一个选项(因为它是我经常看到的形式),但我发现第二个和第三个更直观.

第一:

switch(x) {
    case 1:
        DoSomething();
        break;
    case 2:
        DoSomething();
        break;
}
Run Code Online (Sandbox Code Playgroud)

第二:

switch(x) {
    case 1: DoSomething();
        break;
    case 2: DoSomething();
        break;
}
Run Code Online (Sandbox Code Playgroud)

第三:

switch(x) {
    case 1: DoSomething(); break;
    case 2: DoSomething(); break;
}
Run Code Online (Sandbox Code Playgroud)

我理解很多代码风格是优惠的,所以我将我的官方问题设置为:

使用第二个或第三个选项有什么根本的错误,只要它在整个代码中是一致的吗?

coding-style switch-statement

5
推荐指数
2
解决办法
5820
查看次数

具有新ID的Datamapper克隆记录

class Item
    include DataMapper::Resource

    property :id, Serial
    property :title, String
end

item = Item.new(:title => 'Title 1') # :id => 1
item.save
item_clone = Item.first(:id => 1).clone
item_clone.save

# => <Item @id=1 @title="Title 1" ...
Run Code Online (Sandbox Code Playgroud)

这确实如所描述的那样"克隆"对象但是如何这样做以便在保存记录时应用不同的ID,例如

# => <Item @id=2 @title="Title 1" ...
Run Code Online (Sandbox Code Playgroud)

database records clone datamapper duplicates

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

实例变量放置?

我只是关于实例变量展示位置的一个小问题.

例:

private void example_MouseMove(object sender, MouseEventArgs e){
    //do stuff
}
Run Code Online (Sandbox Code Playgroud)

c#中的鼠标移动事件一直在轮询.有时我可能只想在鼠标位置完全移动到另一个像素时才在其中运行代码.所以我会写这个:

private void example_MouseMove(object sender, MouseEventArgs e){
    if (_prevMousePosition == Cursor.Position) return;
    //Do stuff
}
Run Code Online (Sandbox Code Playgroud)

我的问题是:变量"_prevMousePosition"是否按照惯例放在类的顶部,或者它是否直接位于方法的顶部,如下所示:

private Point _prevMousePosition = new Point(0, 0);
private void example_MouseMove(object sender, MouseEventArgs e){
    if (_prevMousePosition == Cursor.Position) return;
    //Do stuff
}
Run Code Online (Sandbox Code Playgroud)

我觉得它应该位于方法的顶部,因为它将被访问的唯一地方是事件,并且该方法之外的唯一目的是保留先前的鼠标位置.

另外,如果没有实例变量可以实现相同功能的另一种方法,我很想知道它.

c# coding-style

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

Eclipse仍然认为我安装了RVM,但我没有

我正在使用Eclim在Vim中获得Java,Ruby等的自动完成功能.它启动了Eclipse的一个实例.Eclipse仍然认为我出于某种原因安装了RVM(我现在使用rbenv).知道我应该如何摆脱这个配置问题或解决这个错误?

2014-06-22 22:43:10,123 INFO  [org.eclim.plugin.jdt.PluginResources] Setting 'JRE_SRC' to '/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home/src.zip'
org.eclipse.core.runtime.CoreException: Exception occurred executing command line.
    at org.eclipse.debug.core.DebugPlugin.exec(DebugPlugin.java:875)
    at org.eclipse.dltk.internal.launching.execution.LocalExecEnvironment.exec(LocalExecEnvironment.java:72)
    at org.eclipse.dltk.launching.ScriptLaunchUtil.runScriptWithInterpreter(ScriptLaunchUtil.java:85)
    at org.eclipse.dltk.ruby.internal.launching.RubyGenericInstall$BuiltinsHelper.generateLines(RubyGenericInstall.java:70)
    at org.eclipse.dltk.ruby.internal.launching.RubyGenericInstall$BuiltinsHelper.load(RubyGenericInstall.java:171)
    at org.eclipse.dltk.ruby.internal.launching.RubyGenericInstall$BuiltinsHelper.getSources(RubyGenericInstall.java:144)
    at org.eclipse.dltk.ruby.internal.launching.RubyGenericInstall.getBuiltinModules(RubyGenericInstall.java:246)
    at org.eclipse.dltk.internal.core.BuiltinProjectFragment.isSupported(BuiltinProjectFragment.java:97)
    at org.eclipse.dltk.internal.core.ScriptProject.computeProjectFragments(ScriptProject.java:673)
    at org.eclipse.dltk.internal.core.ScriptProject.computeProjectFragments(ScriptProject.java:605)
    at org.eclipse.dltk.internal.core.ScriptProject.computeProjectFragments(ScriptProject.java:565)
    at org.eclipse.dltk.internal.core.ScriptProject.getAllProjectFragments(ScriptProject.java:2921)
    at org.eclipse.dltk.internal.core.ScriptProject.getAllProjectFragments(ScriptProject.java:2915)
    at org.eclipse.dltk.core.search.indexing.core.ProjectRequest.run(ProjectRequest.java:67)
    at org.eclipse.dltk.core.search.indexing.AbstractJob.execute(AbstractJob.java:76)
    at org.eclipse.dltk.internal.core.search.processing.JobManager.run(JobManager.java:467)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.IOException: Cannot run program "/Users/ivan/.rvm/rubies/ruby-2.0.0-p195/bin/ruby" (in directory "/var/folders/nh/07hs5mmj0hs7fdq3181dwpbc0000gn/T/dltk60850.tmp/scripts"): error=2, No such file or directory
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1042)
    at java.lang.Runtime.exec(Runtime.java:620)
    at org.eclipse.debug.core.DebugPlugin.exec(DebugPlugin.java:871)
    ... 16 more
Caused by: java.io.IOException: error=2, No such …
Run Code Online (Sandbox Code Playgroud)

ruby eclipse vim eclim

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

相互减去两个查询

我是Rails的新手,甚至是红宝石,所以在弄清楚这一点时遇到了一些麻烦。

我想找到两个查询之间的区别。此特定查询应返回一条记录,因为我已将其设置为使Recipe缺少食谱中的ID之一。当前代码:

q = Recipe.all - Recipe.where(recipe_id: recipes)
Run Code Online (Sandbox Code Playgroud)

配方是ID数组。

从我对语言的有限了解来看,如果Recipe.all和Recipe.where都返回了数组,这将起作用。

我花了一些时间在网上搜索,没有任何帮助。

我尝试过的其他方法:

q = [Recipe.all] - [Recipe.where(recipe_id: recipes)]
q = Recipe.where.not(recipe_id: recipes) # Wouldn't work because the array is the one with the extra id
Run Code Online (Sandbox Code Playgroud)

尽管都没有被证明有帮助。

ruby-on-rails

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