小编Pao*_*olo的帖子

java.lang.InternalError:name太长而无法表示

我收到此错误:

java.lang.InternalError: name is too long to represent
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
        at weblogic.utils.classloaders.GenericClassLoader.defineClass(GenericClassLoader.java:338)
        at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:291)
        at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:259)
Run Code Online (Sandbox Code Playgroud)

这似乎与某些调试功能有关(实际上删除-Xdebug命令行选项,错误消失).我也在ASF Bugzilla中找到了一些信息.有办法解决这个问题吗?

我能想到的可能的解决方案是更改JVM(使用JRockit应该没有这个问题),但我真的不知道这是否可以解决问题以及是否可以破坏其他问题.

java weblogic java-5

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

阻止范围变量

这将编译

class X
{  
    public static void main(String args[])
    {
        {
            int a = 2;
        }
        {
            int a = 3;
        }       
    }
}
Run Code Online (Sandbox Code Playgroud)

这不会

class X
{  
    public static void main(String args[])
    {

        int a = 2;

        {
            int a = 3;
        }       
    }
}
Run Code Online (Sandbox Code Playgroud)

我期望两者都编译(也许这是C的工作方式?).原因是什么,因为无法在外部块中使用相同名称的块声明变量?

java scope compiler-errors

13
推荐指数
2
解决办法
9920
查看次数

null作为方法参数的类型是什么?

所以这就是这个例子

public static void main(String[] args) {        
    new Stuff(null);
    new Stuff("a");
    new Stuff(1);           
}
Run Code Online (Sandbox Code Playgroud)

和类Stuff定义如下

public class Stuff {    
       Stuff(Object o){
           System.out.println("object");        
       }

       Stuff(String s){
           System.out.println("string");        
       }

}
Run Code Online (Sandbox Code Playgroud)

输出是

string
string
object
Run Code Online (Sandbox Code Playgroud)

Java如何告诉它null是一个String?如果我换Stuff

public class Stuff {    

       Stuff(String s){
           System.out.println("string");        
       }

       Stuff(Integer o){
           System.out.println("Integer");           
       }

}
Run Code Online (Sandbox Code Playgroud)

我得到编译错误Stuff(null):

The constructore Stuff(String) is ambigous. 
Run Code Online (Sandbox Code Playgroud)

再说一次,为什么Java"决定" null是一个String

java

13
推荐指数
2
解决办法
296
查看次数

何时删除SharedPreferences?

SharedPreferences类允许以简单类型(布尔,字符串等)格式保存应用程序数据.

通常它们不会被删除,它们应该保留,但是在更新/删除应用程序或清除应用程序缓存时会删除它们吗?

android

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

比较表达式语言中的字符串和布尔值

我有这种行为我真的不明白

${someVar}
${someVar.class.name}      
${someVar == 'error'}
Run Code Online (Sandbox Code Playgroud)

输出

false
java.lang.Boolean
true
Run Code Online (Sandbox Code Playgroud)
  1. 怎么可以解开?
  2. 编写测试的正确方法是什么,以便首先测试两个"事物"是否具有相同类型,然后它们的值是否相同?

java jsp weblogic el

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

有什么理由使用!0而不是真的?

我找到了一些使用的代码

!0
!1
Run Code Online (Sandbox Code Playgroud)

我想这与事情完全相同

true
false
Run Code Online (Sandbox Code Playgroud)

有没有理由这样做或只是一些缩写?

javascript

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

用于Java的简单物理量测量单元解析器

我希望能够解析表示物理量的表达式

g/l
m/s^2
m/s/kg
m/(s*kg)
kg*m*s
°F/(lb*s^2)
Run Code Online (Sandbox Code Playgroud)

等等.以最简单的方式.是否可以使用像Pyparsing这样的东西(如果Java存在这样的东西),或者我应该使用更复杂的工具,如Java CUP?

编辑:回答MrD的问题,目标是在数量之间进行转换,例如将g转换为kg(这个很简单......),或者可能是°F /(kg*s ^ 2)到K /(lb*h ^ 2)假设h为4小时,lb为磅

java parsing

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

查找未添加到ClearCase的所有文件

我在不同的目录中创建了一些文件.我创建时无法添加它们,所以我需要稍后再做.

有没有办法获取ClearCase视图中的所有文件的列表,这些文件实际上不在源代码管理下?

clearcase

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

在EL中替换"\n"

在JSP文件中,我想用new替换换行符(\n)<br />.我试过了

${fn:replace(someString, '\n', '<br />')}
Run Code Online (Sandbox Code Playgroud)

但是我收到了一个错误 '\n' ecnountered, was expeting one of...

我猜这意味着解析器不喜欢这样的东西.

是否可以使用EL做这样的事情?

jsp el

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

如何将变量参数传递给基类

我想在基类构造函数中使用变量参数。派生类中也是如此。构造函数可以接收未知数量的参数,我想将它们传递给基类构造函数,以进行一些处理。我没有找到任何合适的解决方案,而且似乎可以使用spread operator解决,显然TypeScript中没有。它将在1.5版中开发(对吗?):

class TSBase{
  constructor(...args: any[]){
    //do stuff with args
  }
}

class TSSomeController extends TSBase{
  constructor(...args: any[]){         
    //let base do some stuff
    //super(...args); //this doesn't work, but it would be cool... :)
  }
}
Run Code Online (Sandbox Code Playgroud)

在TypeScript中做到这一点的最佳方法是什么?我可以使用类似的东西super.prototype.apply吗?

typescript

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