我在运行Eclipse时遇到问题.我尝试使用java 6和java 7的3.7,4.2和4.3版本.没有什么可以帮助我.它向我显示弹出屏幕,但它没有开始加载(我没有机会选择工作区).使用-debug -console
参数启动它表明它在此时停止运行:
Time to load bundles: 10
Starting application: 6374
osgi>
Run Code Online (Sandbox Code Playgroud)
我已经启动了JVisualVM,但我无法观察到任何特殊的东西.没有死锁等.
编辑
我的观察结果很深......大约60年后,日食的pid已经死了.
编辑2
现在它停止了
Time to load bundles: 8
org.eclipse.m2e.logback.configuration: The org.eclipse.m2e.logback.configuration bundle was activated before the state location was initialized. Will retry after the state location is initialized.
Starting application: 3557
Run Code Online (Sandbox Code Playgroud)
编辑3
我已设法启动它,但只使用-clean
参数和从命令行-data
参数选择工作区.
我正在按照本教程在Android上获得对Google Maps V2的支持.不幸的是在第二步中我没有选择复制到工作区选项,我删除了\extras\google\google_play_services\libproject\google-play-services_lib
目录的项目.之后我注意到我删除了google-play-services_lib.jar
,但它仍然存在于SDK中.我删除了Google Play服务并再次安装,但仍然没有google-play-services_lib.jar
.我该怎么办?
我有以下课程:
public class Item{
private String name;
//setter getter
}
Run Code Online (Sandbox Code Playgroud)
和物品的集合.我想得到Collection中最后一项的名字.要做到这一点,我只需迭代所有集合并使用最后.问题是我不知道为什么它迫使我使用一个元素String数组.
为什么我必须使用:
String[] lastName = {""};
items.forEach(item -> lastName[0] = item.getName());
System.out.println(lastname[0]);
Run Code Online (Sandbox Code Playgroud)
代替:
final String lastName;
items.forEach(item -> lastName = item.getName());
System.out.println(lastname);
Run Code Online (Sandbox Code Playgroud) 我无法将我的Android连接到Ubuntu.我已添加规则udev
,我已添加设备adb_usb.ini
,我仍然得到相同的空列表.
我的lsusb:
`Bus 002 Device 124: ID 04e8:6860 Samsung Electronics Co., Ltd GT-I9100 Phone [Galaxy S II]`
Run Code Online (Sandbox Code Playgroud)
adb_usb.ini
# ANDROID 3RD PARTY USB VENDOR ID LIST -- DO NOT EDIT.
# USE 'android update adb' TO GENERATE.
# 1 USB VENDOR ID PER LINE.
0x0e79
0x04e8
Run Code Online (Sandbox Code Playgroud)
51 android.rules
SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0e79", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0502", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0b05", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="413c", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0489", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="091e", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="18d1", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666"
SUBSYSTEM=="usb", …
Run Code Online (Sandbox Code Playgroud) 以下问题已与此问题分开: ArrayIndexOutOfBoundsException while Spring save data to MongoDB
我在将对象保存到 MongoDB 时遇到问题。我注意到问题可能是由过于复杂的对象引起的。我有以下类层次结构:
ClassA
是ClassB
和的超类ClassC
。ClassD
包含地图的地图。ClassC
包含ClassB
.
我调用的代码如下:
ClassC c = new ClassC()
c.setName("NAME");
mongoOperation.save(c, "Mongo"); // MongoOperations object
Run Code Online (Sandbox Code Playgroud)
问题是 Mongo 不保存对象的数据。它仅保存_id
和_class
。
实际数据
{
"_id" : ObjectId("53e86cd9c506f66eafaa03cb"),
"_class" : "com.sample.ClassC"
}
Run Code Online (Sandbox Code Playgroud)
预期数据
{
"_id" : ObjectId("53e86cd9c506f66eafaa03cb"),
"_class" : "com.sample.ClassC",
"name" : "NAME"
}
Run Code Online (Sandbox Code Playgroud)
有趣的是,当我注释掉地图字段时,ClassD
一切正常。
是否可能是由我尝试序列化的对象过于复杂引起的?
编辑
当我bObject
从中删除时ClassC
也可以正常工作。
编辑2
所有类都是带有 setter 和 getter 的简单 bean。 …
我无法在Cloudera中启动NFS网关。它给我错误Supervisor returned FATAL. Please check the role log file, stderr, or stdout
但是我可以在stdout中观察到的唯一奇怪的事情是
socket.error: [Errno 111] Connection refused
+ '[' 1 -ne 0 ']'
+ echo 'Cannot connect to port 111.'
+ return 1
+ '[' 1 -eq 1 ']'
+ echo 'No portmap or rpcbind service is running on this host. Please start portmap or rpcbind service before attempting to start the NFS Gateway role on this host.'
+ exit 1
Run Code Online (Sandbox Code Playgroud)
我试图将端口111更改为1111,但这没有帮助。有什么想法我该怎么办?
我有以下两个课程:
public Class A{
String name;
Integer age;
//setters and getters
}
Run Code Online (Sandbox Code Playgroud)
和
public Class B{
String name;
Integer age;
Integer height;
//setters and getters
}
Run Code Online (Sandbox Code Playgroud)
和以下方法
public String getMyName(B b){
return b.getName()+" "+b.getAge()+" "+b.getHeight();
}
Run Code Online (Sandbox Code Playgroud)
是否有可能重构此方法以使用泛型,这将允许我为这两个不同类的对象调用它?
例如
public <T> String getMyName(T t){
return t.getName()+" "+t.getAge()+( t instanceof B ? " "+t.getHeight() : "");
}
Run Code Online (Sandbox Code Playgroud)
当然它不起作用,因为t
不知道方法getName
,getAge
和getHeight
.
类没有任何关系(我知道它们可以从一个公共类继承并使用,<T extends C>
但它们没有超类或公共接口)
我有使用Maven构建的Spring-boot应用程序.当我使用STS(作为Spring Boot App运行)部署它时它工作正常,但是当我使用IntelliJ Idea时它不起作用.
部署过程中日志中没有错误.但是当我尝试刷新页面时,我得到了这个:
白标错误页面
此应用程序没有/ error的显式映射,因此您将此视为回退.Mon Aug 04 14:48:38 CEST 2014出现意外错误(type = Not Found,status = 404).
我已经将Spring模块添加到项目中.在我添加了这个之后,我添加了一些基于 XML的XML配置和我的Application.java
类到基于代码的配置.
我已经更改了日志记录,FINEST
并注意到当我重新加载页面时,工作和不工作版本之间的日志存在一些差异.
不工作的版本
DEBUG [org.springframework.web.servlet.view.JstlView] - Forwarding to resource [/WEB-INF/jsp/layouts/default.jsp] in InternalResourceView 'layouts/default'
DEBUG [org.springframework.web.servlet.DispatcherServlet] - DispatcherServlet with name 'dispatcherServlet' processing GET request for [/WEB-INF/jsp/layouts/default.jsp]
DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Looking up handler method for path /WEB-INF/jsp/layouts/default.jsp
DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Did not find handler method for [/WEB-INF/jsp/layouts/default.jsp]
DEBUG [org.springframework.web.servlet.handler.SimpleUrlHandlerMapping] - Matching patterns …
Run Code Online (Sandbox Code Playgroud) 例如,我有这个课程:
public class A {
private List<String> list;
public A(B b){
list = b.getList();
}
public List<String> someMethod(){
return list;
}
}
Run Code Online (Sandbox Code Playgroud)
我想在someMethod
不调用构造函数的情况下进行单元测试.我用反射来设定list
.
问题是我不想创建B
类对象,我不能模拟它,因为它会导致NPE.
所以我的问题是:
如何测试someMethod
而不调用构造函数A
?有没有办法模拟A类并且不会失去调用方法的可能性?
创建零参数的构造函数不是解决方案.
注:我不希望改变一个类的任何部分.我问是否有可能在没有添加或更改A类中的任何内容的情况下执行此测试.
让我们说我有以下课程:
public class RectangularPrism{
public Integer width;
public Integer height;
public Integer depth;
//setters and getters
}
Run Code Online (Sandbox Code Playgroud)
我用它来计算所有棱镜的体积总和.我有两种计算方法.哪一个更好?
这个使用条件运算符.
public Integer volumeSum(List<RectangularPrism> prismList){
Integer sum = 0;
for(RectangularPrism prism: prismList){
Integer width = prism.getWidth() == null ? 0 : prism.getWidth();
Integer height = prism.getHeight() == null ? 0 : prism.getHeight();
Integer depth = prism.getDepth() == null ? 0 : prism.getDepth();
sum += width * height * depth;
}
return sum;
}
Run Code Online (Sandbox Code Playgroud)
这个使用try catch块
public Integer volumeSum(List<RectangularPrism> …
Run Code Online (Sandbox Code Playgroud) 我有Sample
一个领域的课,我正在做以下事情:
我对BigInteger
类对象做同样的事情,它的工作方式不同.为什么会这样?
我的课:
public class Sample {
private int number;
public int getNumber(){
return number;
}
public void setNumber(int number){
this.number = number;
}
public Sample add(int number){
this.number += number;
return this;
}
}
Run Code Online (Sandbox Code Playgroud)
调用:
public class Main {
public static void main(String[] args) {
Main m = new Main();
BigInteger b1 = new BigInteger("5");
Sample s1 = new Sample();
s1.setNumber(3);
System.out.println(s1.getNumber());
Sample s2 = m.checkSample(s1);
BigInteger b2 = m.checkBig(b1);
System.out.println(s1.getNumber()+" "+s2.getNumber()); …
Run Code Online (Sandbox Code Playgroud) 这只是一个理论问题
在并行计算中,可以实现大于100%的效率吗?
例如效率为125%
+-------------+------+
| Processors | Time |
+-------------+------+
| 1 | 10s |
| 2 | 4s |
+-------------+------+
Run Code Online (Sandbox Code Playgroud)
当并行环境配置错误或代码中存在一些错误时,我不是指算法.
效率定义:https: //stackoverflow.com/a/13211093/2265932
java ×8
android ×2
spring ×2
spring-boot ×2
biginteger ×1
cloudera ×1
eclipse ×1
generics ×1
hadoop ×1
hdfs ×1
java-8 ×1
lambda ×1
linux ×1
maven ×1
mockito ×1
mongodb ×1
mpi ×1
object ×1
openmpi ×1
reference ×1
reflection ×1
slackware ×1
try-catch ×1
ubuntu-12.04 ×1
unit-testing ×1