小编dog*_*ane的帖子

所有团队成员都应该使用相同的IDE吗?

是否应该强制所有团队成员使用相同的IDE(例如eclipse,netbeans,intellij)进行编程,即使构建过程独立于IDE?(假设项目中没有使用IDE特定的插件等.)

如果每个人都使用相同的IDE,他们可以共享相同的配置并在更一致的环境中工作.但是,如果您已经使用某个IDE多年,那么被迫使用另一个IDE将会令人沮丧并降低工作效率,因为您将尝试学习IDE而不是专注于问题域.

我很想知道你在这两种类型的团队中选择了哪一种,以及你认为哪种团队效果最好.

谢谢

ide

8
推荐指数
2
解决办法
1444
查看次数

使用Unsafe.getUnsafe().throwException抛出异常

我在java.lang.Class #newInstance0中遇到了一些有趣的代码:

// Run constructor
try {
    return tmpConstructor.newInstance((Object[])null);
} catch (InvocationTargetException e) {
    Unsafe.getUnsafe().throwException(e.getTargetException());
    // Not reached
    return null;
}
Run Code Online (Sandbox Code Playgroud)

查看Unsafe.getUnsafe().throwException声明.它看起来像是从一个没有声明它被抛出的方法抛出一个已检查的异常!

他们为什么这么做?
如果Sun开发人员可以使用这种技术,我们也可以这样做吗?

java unsafe exception

8
推荐指数
2
解决办法
1947
查看次数

从ps隐藏参数

我想保持我的ssh命令隐藏/伪装其他用户.

例:

ssh user@host -i /my/private/key
Run Code Online (Sandbox Code Playgroud)

不幸的是,这将出现在ps列表中,其他用户将能够看到我正在使用的私钥文件.有没有解决的办法?

(他们以与我相同的用户身份登录)

unix command-line

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

maven构建错误

我对maven非常新.我下载了maven 2.0.11版本并将其安装在我的32位redhat linux和JDK 1.4上

安装完成后,我配置了代理设置.当我尝试运行mvn install某个存储库(org)的命令downlaod成功但是它失败并出现如下构建错误:

[INFO] ------------------------------------------------------------------------   
[ERROR] BUILD ERROR   
[INFO] ------------------------------------------------------------------------   
[INFO] Cannot execute mojo: resources. It requires a project with an existing pom.xml, but the build is not using one.   
[INFO] ------------------------------------------------------------------------   
[INFO] For more information, run Maven with the -e switch   
[INFO] ------------------------------------------------------------------------   
[INFO] Total time: 16 second
Run Code Online (Sandbox Code Playgroud)

这个错误是什么意思 ?我错过了什么配置?
我怎样才能下载完整的存储库?

谢谢,

java linux maven-2

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

保持库无依赖性

我有一个小的实用程序库,包含一些有用的实用方法,这些方法已经过完全的单元测试 目前,我的库没有外部依赖.我正在考虑将记录添加到我的类中,这可能对调试有用.但这意味着将日志库与我的项目捆绑在一起.

我的问题是:我应该保持我的图书馆依赖免费吗?这样做有什么好处吗?

c# java dependency-management

7
推荐指数
2
解决办法
309
查看次数

我们如何在日志文件中删除额外的消息

我有一个简单的记录程序,即:

public class LoggingExample1 {
 public static void main(String args[]) {
try {
  LogManager lm = LogManager.getLogManager();
  Logger logger;
  FileHandler fh = new FileHandler("log_test.txt");

  logger = Logger.getLogger("LoggingExample1");
  lm.addLogger(logger);
  logger.setLevel(Level.INFO);

  fh.setFormatter(new SimpleFormatter());

  logger.addHandler(fh);
  // root logger defaults to SimpleFormatter. We don't want messages
  // logged twice.
  //logger.setUseParentHandlers(false);

  logger.log(Level.INFO, "test 1");
  logger.log(Level.INFO, "test 2");
  logger.log(Level.INFO, "test 3");
  fh.close();
} catch (Exception e) {
  System.out.println("Exception thrown: " + e);
  e.printStackTrace();
}
}
}
Run Code Online (Sandbox Code Playgroud)

我得到这个日志:

Aug 1, 2011 5:36:37 PM LoggingExample1 main
INFO: test …
Run Code Online (Sandbox Code Playgroud)

java logging java.util.logging

7
推荐指数
2
解决办法
4064
查看次数

通过log4j发送JNI C stderr/stdout

我的java应用程序使用JNI来调用用C编写的库.这个本机库将错误记录到stderr,但我想以某种方式通过我的log4j记录器重定向错误流.这可能吗?

C库是外部的 - 我没有源代码,因此无法更改它.

谢谢

java java-native-interface logging

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

必要时切换到BigInteger

我正在阅读一个文本文件,其中包含[1,10 ^ 100]范围内的数字.然后,我对每个数字执行一系列算术运算.我想只在数字超出int/long范围时才使用BigInteger.一种方法是计算字符串中有多少位数,如果有太多则切换到BigInteger.否则我只是使用原始算法,因为它更快.有没有更好的办法?

有没有什么理由为什么Java不能自动执行此操作,如果int太小,切换到BigInteger?这样我们就不用担心溢出了.

java biginteger

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

用泛型投射到内部类

请考虑以下代码:

public class Outer<T>  {

    public class Inner{
    }

    public static <T> Outer<T>.Inner get(){
        Object o = new Object();
        return (Outer<T>.Inner)o;
    }

    public static void main(String[] args) throws Exception {
        Outer.<String>get();
    }
}
Run Code Online (Sandbox Code Playgroud)

此代码在Eclipse中成功编译,但无法编译javac:

Outer.java:10: ')' expected
        return (Outer<T>.Inner)o;
                        ^
Outer.java:10: ';' expected
        return (Outer<T>.Inner)o;
                         ^
Outer.java:10: illegal start of expression
        return (Outer<T>.Inner)o;
                              ^
3 errors
Run Code Online (Sandbox Code Playgroud)

这是javacEclipse中的错误吗?

如果我将演员阵容改为(Outer.Inner)o编译,虽然有警告:

日食:

Outer.Inner is a raw type. References to generic type Outer<T>.Inner should be parameterized
Run Code Online (Sandbox Code Playgroud)

javac的:

Outer.java:10: …
Run Code Online (Sandbox Code Playgroud)

java generics casting inner-classes

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

Java 7:调用Files.newBufferedReader时我应该使用什么字符集?

在以前的Java版本中,我会通过创建这样的缓冲读取器来读取文件:

BufferedReader in = new BufferedReader(new FileReader("file.txt"));
Run Code Online (Sandbox Code Playgroud)

在Java 7中,我想使用Files.newBufferedReader,但我也需要传入一个charset.例如:

BufferedReader in = Files.newBufferedReader(Paths.get("file.txt"), 
                                            Charset.forName("US-ASCII"));
Run Code Online (Sandbox Code Playgroud)

以前,在阅读纯文本文件时,我不必担心字符集.我应该使用什么字符集?你知道在以前版本的Java中默认使用了什么字符集吗?我只是希望能够找到并用新的语句替换旧语句.

java file-io nio java-7

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