在我的Windows构建服务器上安装Java 8 JDK后,执行sencha
命令时遇到以下错误:
C:\> sencha
Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion'
has value '1.8', but '1.7' is required.
Error: could not find java.dll
Error: Could not find Java SE Runtime Environment.
Run Code Online (Sandbox Code Playgroud)
Sencha Cmd指南暗示Java 8尚不支持(但是Sencha Cmd在我的Mac OS X工作站上使用Java 8工作正常):
Sencha Cmd要求Java Runtime Environment 1.7版支持所有功能......
我还在服务器上安装了JDK 7.有没有办法强迫Sencha Cmd使用不同的JDK安装?更改JAVA_HOME和PATH sysenvs不起作用,并且不能编辑注册表.
更新:我遇到过这个问题,其中多个java.exe
文件导致相同的错误(这肯定是可能的)但是maven,ant,tomcat,jenkins和一些其他Java工具工作正常.我只看到了Sencha Cmd的这个错误.
我的工作使用一个JSQMessagesViewController消息传递应用程序,我想给另一个变量,一个整数相关联score
,其中每个消息(具有默认值,例如沿senderID
,text
和displayName
).这就是我尝试实现这个的方法:
func addMessage(id: String, text: String, displayName: String, score: Int) {
// Make sure the character count is between 10 and 140, then add message to message list to display
if (text.characters.count <= 10 || text.characters.count >= 140) {
}
else {
let message = JSQMessage(senderId: id, displayName: displayName, text: text, score: score)
messages.append(message)
}
}
Run Code Online (Sandbox Code Playgroud)
但是,我收到以下错误消息:
Argument labels '(senderId:, displayName:, text:, score:)' do not match any available overloads
我只能假设这是因为有一些关于JSQMessage对象可以容纳的数据的预设定义,我只是不确定如何覆盖它以便我可以将其他变量与我的消息相关联.
注意:我试图直接更改JSQMessagesViewController框架本身(在JSQMessage.h …