背景:我有一个新的eclipse安装并安装了m2eclipse插件.启动后m2eclipse生成消息:
Eclipse在JRE中运行,但是需要JDK
按照这里的说明,我已经将eclipse.ini文件更改为使用JDK JVM:
-startup
plugins/org.eclipse.equinox.launcher_1.0.200.v20090520.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519
-product
org.eclipse.epp.package.jee.product
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
-vm
"C:\Program Files\Java\jdk1.6.0_16\bin\javaw.exe"
Run Code Online (Sandbox Code Playgroud)
然而,在重新启动eclipse之后,我仍然收到消息说它在JRE而不是JDK下运行.
通过帮助 - >关于Eclipse - >安装细节 - >配置查看 eclipse 配置,似乎eclipse正在从其他地方获取JVM配置详细信息:
...
-vm
C:\Program Files (x86)\Java\jre6\bin\client\jvm.dll
eclipse.home.location=file:/C:/Program Files (x86)/eclipse/
eclipse.launcher=C:\Program Files (x86)\eclipse\eclipse.exe
eclipse.p2.data.area=@config.dir/../p2/
eclipse.p2.profile=epp.package.jee
eclipse.product=org.eclipse.epp.package.jee.product
eclipse.startTime=1252669330296
eclipse.vm=C:\Program Files (x86)\Java\jre6\bin\client\jvm.dll
eclipse.vmargs=-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
-vm
"C:\Program Files\Java\jdk1.6.0_16\bin\javaw.exe"
-XX:MaxPermSize=256m
...
Run Code Online (Sandbox Code Playgroud)
我的问题是第一个-vm参数来自何处以及如何删除或更改它?
谢谢
更新:我根据VonC的回答更新了eclipse.ini文件.我现在在启动eclipse时遇到错误说:
必须提供Java运行时环境(JRE)或Java Development Kit(JDK)才能运行Eclipse.搜索以下位置后未找到Java虚拟机:"C:\ Program Files\Java\jdk1.6.0_16\bin\javaw.exe"
我已经确认路径是正确的,可以通过命令行执行.
完成下面的eclipse.ini:
-startup
plugins/org.eclipse.equinox.launcher_1.0.200.v20090520.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519 …Run Code Online (Sandbox Code Playgroud) 我有一个3D闭合网格汽车对象,其表面由三角形组成.我想计算它的体积,体积中心和惯性张量.
你可以帮帮我吗
问候.乔治
我使用Indy进行TCP通信(D2009,Indy 10).
在评估客户端请求后,我想将答案发送给客户端.因此我存储TIdContext,就像这样(伪代码)
procedure ConnectionManager.OnIncomingRequest (Context : TIdContext);
begin
Task := TTask.Create;
Task.Context := Context;
ThreadPool.AddTask (Task);
end;
procedure ThreadPool.Execute (Task : TTask);
begin
// Perform some computation
Context.Connection.IOHandler.Write ('Response');
end;
Run Code Online (Sandbox Code Playgroud)
但是,如果客户端在请求和准备发送的答案之间的某处终止连接,该怎么办?如何检查上下文是否仍然有效?我试过了
if Assigned (Context) and Assigned (Context.Connection) and Context.Connection.Connected then
Context.Connection.IOHandler.Write ('Response');
Run Code Online (Sandbox Code Playgroud)
但它没有帮助.在某些情况下,程序只是挂起,如果我暂停执行,我可以看到当前行是if条件的行.
这里发生了什么?如何避免尝试使用死连接发送?
我的意思是真正的USB键盘,而不是软件键盘驱动程序.
我知道键盘有所不同,但总的来说它很容易/可以重新编程/重新连接吗?也许有些模型更容易做到这一点?
是的,我可以使用烙铁/硬件闪存重编程器.
最近被问到这个问题并且不知道答案.从高层可以解释Java如何获取字符/字符串并将其转换为int.
非常感谢
卡尔
编辑:也很高兴知道其他语言是否也做类似的事情.
我正在asp.net中实现一个聊天系统,很像谷歌聊天,我使用xmhttp发送和接收数据,我使用一个表来存储所有用户的所有聊天.
我希望使用XMLHttpRequest在sql中创建全局临时表,以便更好地组织数据(而不是将所有聊天存储在一个sigle表中,当很多用户访问它时,它可以(我不确定)会导致锁定问题.)
同样对于我的系统我不需要存储聊天,因此我认为全局临时表会更好,因为它已经被删除并省去了清除它的麻烦.
但是在Xmlhttprequest创建的表之后,它在创建之后才被删除....为什么会发生这种情况我不知道....我也已经删除了所有连接关闭行但仍然没有运气
所以我该怎么做??如果有人知道任何在线资源可以指出我要遵循的最佳做法,请告诉我.
我有一个小部件的树结构,例如集合包含模型,模型包含小部件.我想复制整个集合,copy.deepcopy与'pickle and de pickle'对象相比更快,但cPickle用C语言写得快得多,所以
示例测试代码:
import copy
import pickle
import cPickle
class A(object): pass
d = {}
for i in range(1000):
d[i] = A()
def copy1():
return copy.deepcopy(d)
def copy2():
return pickle.loads(pickle.dumps(d, -1))
def copy3():
return cPickle.loads(cPickle.dumps(d, -1))
Run Code Online (Sandbox Code Playgroud)
时序:
>python -m timeit -s "import c" "c.copy1()"
10 loops, best of 3: 46.3 msec per loop
>python -m timeit -s "import c" "c.copy2()"
10 loops, best of 3: 93.3 msec per loop
>python -m timeit -s "import …Run Code Online (Sandbox Code Playgroud) artifacts ×1
asp.net ×1
c ×1
c# ×1
c++-faq ×1
chat ×1
declaration ×1
deep-copy ×1
definition ×1
delphi ×1
delphi-2009 ×1
eclipse ×1
embedded ×1
hardware ×1
indy ×1
java ×1
jvm ×1
m2eclipse ×1
maven-2 ×1
mesh ×1
methods ×1
nexus ×1
parsing ×1
pickle ×1
python ×1
sql ×1
string ×1
surface ×1
tcp ×1
terminology ×1
timeout ×1
volume ×1