是否有Eclipse命令用括号括起当前选择?
创建模板是一个不错的解决方法; 它不能与"Surround With"功能一起使用,因为我想为表达式括号,而不是整行,并且需要${word_selection}
而不是${line_selection}
.
有没有办法可以将键盘快捷键绑定到此特定模板?Ctrl- space Ctrl- space箭箭箭并不像我所希望的一样光滑.
我试图使用此命令将标准PKCS#12(.p12)密钥库转换为Java JKS密钥库:
keytool -importkeystore -srckeystore keystore.p12 -srcstoretype PKCS12 -deststoretype JKS -destkeystore keystore.jks
失败的是:
keytool error: java.io.IOException: failed to decrypt safe contents entry: javax.crypto.BadPaddingException: Given final block not properly padded
Run Code Online (Sandbox Code Playgroud)
你知道如何解决这个问题吗?
我是Java的新手,也是编程的新手(我知道直接进入Java可能不是最好的主意.)而且无论我如何尝试在程序中添加暂停,我都会遇到错误.我正在做一个简单的计数程序,并希望在每个数字之间添加一秒延迟,这是我到目前为止的代码:
import java.lang.*;
public class Counter
{
public static void main(String[]args)
{
int i;
for (i = 0; i <= 10; i++)
{
Thread.sleep(1000);
System.out.println(i);
}
System.out.println("You can count to ten.");
}
}
Run Code Online (Sandbox Code Playgroud)
调用Thread.sleep()
不会编译.该javac
编译器说:"没有报告异常InterruptedException异常;必须捕获或声明抛出"和Eclipse说,"未处理的异常类型InterruptedException的"
我用openssl生成一个认证密钥.这是我的命令:
openssl genrsa -des3 -out enc_key.pem 1024
我导出到cer文件,然后用java keytool我导入到java密钥库(jks).
密钥库听起来不错.我可以从我的Java应用程序加载密钥库.
问题是当客户端连接到服务器时(在这种情况下是FTP服务器,而不是Web服务器,我使用apache mina),发生异常:
javax.net.ssl.SSLHandshakeException:SSL握手失败.org.apache.mina.filter.ssl.SslFilter.messageReceived(SslFilter.java:433)位于org.apache.mina.core的org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434) .filterchain.DefaultIoFilterChain.access $ 5(DefaultIoFilterChain.java:429)
...
引起:javax.net.ssl.SSLHandshakeException:com.sun.net.ssl.ssl.ssl.inl上的com.sun.net.ssl.internal.ssl.Handshaker.checkThrown(未知来源)没有共同的密码套件.SLEngineImpl来自com.sun.net.ssl.internal.ssl.SSLEngineImpl.writeAppRecord(未知来源)的.checkTaskThrown(未知来源)位于javax.net的com.sun.net.ssl.internal.ssl.SSLEngineImpl.wrap(未知来源) .ssl.SSLEngine.wrap(未知来源)
...
引起:javax.net.ssl.SSLHandshakeException:在com.sun.net.ssl.inl.ssl.SSLEngineImpl的com.sun.net.ssl.internal.ssl.Alerts.getSSLException(未知来源)中没有共同的密码套件.fatal(未知来源)
我想问一些事情:
任何帮助将不胜感激!谢谢
我正在使用Quartz CronTrigger工具来解析cron调度格式字符串,以确定何时应运行特定作业.我实际上并没有使用Quartz安排工作.
CronTrigger中有一个名为getFireTimeAfter(Date)的方法,它给出下一次作业将在给定日期之后触发的时间.当提供的日期现在或将来时,这很有效.但如果日期已经过去,它似乎不起作用.
Date currTime = new Date();
CronTrigger tr = new CronTrigger();
tr.setCronExpression("0 0 23 3,18 * ? *");
Date nextFireAt = tr.getFireTimeAfter(currTime);
System.out.println("Reference time: " + currTime);
System.out.println("Next fire after reference time: " + nextFireAt);
Run Code Online (Sandbox Code Playgroud)
这是每月3日和18日23:00开火的cron时间表.例如,如果我今天(8月11日)这样做,我看到:
Reference time: Thu Aug 11 10:04:25 MDT 2011
Next fire after reference time: Thu Aug 18 23:00:00 MDT 2011
Run Code Online (Sandbox Code Playgroud)
但是,如果我将参考日期设置为过去,它会给我相同的下一个开火时间.
Reference time: Wed Dec 31 17:00:00 MST 1969
Next fire after reference time: Thu Aug 18 23:00:00 MDT 2011
Run Code Online (Sandbox Code Playgroud)
我期待输出为:
Reference time: …
Run Code Online (Sandbox Code Playgroud) 我有以下不能编译的代码,虽然有一种方法可以使它编译,我想了解它为什么不编译.有人可以告诉我具体为什么我收到错误信息,我会在最后发布吗?
public class Test {
public static void main(String args[]) {
Test t = new Test();
t.testT(null);
}
public <T extends Test> void testT(Class<T> type) {
Class<T> testType = type == null ? Test.class : type; //Error here
System.out.println(testType);
}
}
Run Code Online (Sandbox Code Playgroud)
Type mismatch: cannot convert from Class<capture#1-of ? extends Test> to Class<T>
通过投射Test.class
到Class<T>
这个编译与Unchecked cast
警告并完美运行.
我正在使用枚举,其中常量是一个类.我需要在常量上调用一个方法但是不能引入编译时依赖项,并且枚举在运行时并不总是可用(可选安装的一部分).因此,我想用反射.
这很容易,但我之前没有使用枚举的反射.
枚举看起来像这样:
public enum PropertyEnum {
SYSTEM_PROPERTY_ONE("property.one.name", "property.one.value"),
SYSTEM_PROPERTY_TWO("property.two.name", "property.two.value");
private String name;
private String defaultValue;
PropertyEnum(String name) {
this.name = name;
}
PropertyEnum(String name, String value) {
this.name = name;
this.defaultValue = value;
}
public String getName() {
return name;
}
public String getValue() {
return System.getProperty(name);
}
public String getDefaultValue() {
return defaultValue;
}
}
Run Code Online (Sandbox Code Playgroud)
使用反射调用常量方法的示例是什么?
我正在尝试从套接字读取项目,我注意到如果套接字流上没有任何内容,它将保留在读取并备份我的应用程序.我想知道是否有一种方法可以设置读取超时或在套接字中没有任何时间后终止连接.
是否可以将Java中的对象转换为组合泛型类型?
我有一个方法,如:
public static <T extends Foo & Bar> void doSomething(T object) {
//do stuff
}
Run Code Online (Sandbox Code Playgroud)
如果我有一个实现两个接口的类(Foo和Bar),则调用此方法没有问题.
问题是,当我需要调用此方法时,我需要传递给它的对象,java.lang.Object
并且我需要将其转换为使编译器满意.但我无法弄清楚如何进行演员表演.
编辑:
问题在于这样的功能:
public void problemFunction (Object o) {
if ( o instanceof Foo && o instanceof Bar) {
doSomething((Problematic cast) o);
}
}
Run Code Online (Sandbox Code Playgroud)
}
为什么我用这个Java代码会出现编译器错误?
1 public List<? extends Foo> getFoos()
2 {
3 List<? extends Foo> foos = new ArrayList<? extends Foo>();
4 foos.add(new SubFoo());
5 return foos;
6 }
Run Code Online (Sandbox Code Playgroud)
其中'SubFoo'是实现Foo的具体类,而Foo是一个接口.
我用这段代码得到的错误:
更新:感谢Jeff C,我可以更改第3行来说"new ArrayList <Foo>();".但我仍然遇到第4行的问题.