Hiroshi Yoshikawa
2025.11.01
ビルドは通るが実行時にエラーが出る
ラズパイ版を使っています。 バージョンはすべて最新版を適用しています。 https://www.vstone.co.jp/sotamanual/index.php?VstoneMagic%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%8B%2F%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%2F%E6%8C%A8%E6%8B%B6%E3%81%95%E3%81%9B%E3%81%A6%E3%81%BF%E3%82%88%E3%81%86 上記ページの内容を参考に、発話を実装したところ、ビルドは通るのですが実行時に以下のエラーが出て止まってしまいます。 例外が発生しました: java.lang.ClassNotFoundException (捕捉されない)"スレッド=main", java.lang.ClassLoader.loadClass()、行=436 bci=121Listening for transport dt_socket at address: 8765 main[1] Exception in thread "main" java.lang.NoClassDefFoundError: jp/vstone/sotatalk/SpeechRecog$SpeechRecogAbortExceptionexit at main.main.main(main.java:37) Caused by: java.lang.ClassNotFoundException: jp.vstone.sotatalk.SpeechRecog$SpeechRecogAbortException at java.net.URLClassLoader$1.run(URLClassLoader.java:372) at java.net.URLClassLoader$1.run(URLClassLoader.java:361) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:360) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 1 more exit logout 対応策があればご教示いただけますと幸いです。
回答
Sotaサポート
2025.11.04
Hiroshi Yoshikawa 様

お世話になっております。Sotaサポートです。

頂いたご質問につきまして、raspberrypi版SotaはEdison版と比較してかなり以前のバージョンで更新が停止しており、VstoneMagic側のアップデートを行うことで逆にraspiberryPi版はバージョンが一致しなくなってしまっている可能性があります。
お手数ですが、VstoneMagicを一度インストールし直し、ロボット本体及びVstoneMagicの「ライブラリのアップデート」を行い、再度改善するかご確認いただいてもよろしいですか?
アンインストール後、念のため「C:Users(ユーザ名)VstoneMagicData」のディレクトリも削除してください。
 
Hiroshi Yoshikawa
2025.11.05
お世話になっております.

いろいろ試したところ,VStoneMagicData/jar内にあるsotalib.jarをラズパイ内の/home/vstone/libに配置すると発話のプログラムは回る(ライセンス切れの文言だが,これはライセンスが切れているため正常な挙動)ようになりました.
しかしながら,ポーズブロックを複数並べるプログラムを実行すると以下のエラーが出て正常に動作しません.
やりたいことは複数のポーズを取らせて発話をさせる(対話はせず,カメラ等の機能も使わない)ことのみなのですが,正常に動かす手段がありましたらご教示いただきたく存じます.
ちなみに,VStoneMagicの「ポーズエリア」から関節モータを駆動して動かすことはできています.
よろしくお願いいたします.
 
  1. ビルドを開始します。
  2. C:Program Files (x86)VstoneMagicjdkinjavac.exe -d "C:UsersvmDocumentsVstoneMagicWorkSpace estin" -g -Xlint:deprecation -cp ".;C:UsersvmVstoneMagicDatajarcommons-codec-1.10.jar;C:UsersvmVstoneMagicDatajarcore-2.2.jar;C:UsersvmVstoneMagicDatajargson-2.6.1.jar;C:UsersvmVstoneMagicDatajarjavase-2.2.jar;C:UsersvmVstoneMagicDatajarjna-4.1.0.jar;C:UsersvmVstoneMagicDatajaropencv-310.jar;C:UsersvmVstoneMagicDatajarSotaAppManager.jar;C:UsersvmVstoneMagicDatajarsotalib.jar;C:UsersvmVstoneMagicDatajarsotamotionlib.jar;C:UsersvmVstoneMagicDatajarSRClientHelper.jar" -encoding UTF-8 "C:UsersvmDocumentsVstoneMagicWorkSpace estsrcmainmain.java" "C:UsersvmDocumentsVstoneMagicWorkSpace estsrcjpcomysotamymain.java"
  3. 正常にコンパイルできました。
  4. jarファイルの作成
  5. マニフェストファイルを作成します。
  6. jarファイルを作成します。
  7. C:Program Files (x86)VstoneMagicjdkinjar.exe cvfm test.jar Manifest.mf main jpcomysota
  8. マニフェストが追加されました
  9. main/を追加中です(入=0)(出=0)(0%格納されました)
  10. main/main$GlobalVariable.classを追加中です(入=1029)(出=552)(46%収縮されました)
  11. jarファイルを作成しました。
  12. 送信ファイルの上書き確認
  13. スタートアップアプリケーションの停止
  14. echo "STOP_STARTUP" > /home/vstone/vstonemagic/menu.fifoロボットのSFTPへ接続します。
  15. 192.168.1.227@pi
  16. .
  17. ファイルの転送
  18. ロボットにファイルを転送します。
  19. Connect to 192.168.1.227@pi...接続しました。
  20. ファイルの転送を開始します。
  21. Send':'test.jar' completed
  22. アプリケーション登録用のアーカイブファイルを作成
  23. .
  24. ビルドが完了しました。
  25. jarファイルの実行
  26. ロボットのSSHへ接続します。
  27. 192.168.1.227@pi
  28. Linux raspberrypi 3.18.14-v7+ #792 SMP PREEMPT Sat May 23 16:19:32 BST 2015 armv7l
  29. The programs included with the Debian GNU/Linux system are free software;
  30. the exact distribution terms for each program are described in the
  31. individual files in /usr/share/doc/*/copyright.
  32. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
  33. permitted by applicable law.
  34. Last login: Wed Nov 5 12:37:39 2025 from 192.168.1.94 java -Dfile.encoding=UTF8 -Djava.library.path=/usr/local/share/OpenCV/java/ -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=8765 -jar test.jar 2>&1 &ファイルの転送が完了しました。java -Dfile.encoding=UTF8 -Djava.library.path=/usr/local/share/OpenCV/java/ -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=8765 -jar test.jar 2>&1 &
  35. pi@raspberrypi:~$ java -Dfile.encoding=UTF8 -Djava.library.path=/usr/local/share/OpenCV/java/ -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=8765 -jar test.jar 2>&1 &
  36. [1] 971
  37. pi@raspberrypi:~$ デバッグの準備ができました。
  38. jdbの実行
  39. デバッガを起動します。
  40. C:Program Files (x86)VstoneMagicjdkinjdb.exe -connect com.sun.jdi.SocketAttach:hostname=192.168.1.227,port=8765
  41. Listening for transport dt_socket at address: 8765
  42. 捕捉されないjava.lang.Throwableの設定遅延した捕捉されないjava.lang.Throwableの設定jdbの初期化中...デバッグ実行のスタンバイができました。
  43. > VMが開始されました: 現在のコール・スタックにフレームがありません[Info][SpeechRecog]SpeechRecog
  44. [Info][CRobotSock]Connected server
  45. java.nio.file.NoSuchFileException: /home/vstone/vstonemagic/memdef.conf
  46. at sun.nio.fs.UnixException.translateToIOException(UnixException.java:86)
  47. at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
  48. at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
  49. at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214)
  50. at java.nio.file.Files.newByteChannel(Files.java:361)
  51. at java.nio.file.Files.newByteChannel(Files.java:407)
  52. at java.nio.file.Files.readAllBytes(Files.java:3149)
  53. at jp.vstone.RobotLib.CRoboSetting.LoadSettingFile(CRoboSetting.java:110)
  54. at jp.vstone.RobotLib.CRoboSetting.LoadSettingFile(CRoboSetting.java:129)
  55. at jp.vstone.RobotLib.CRobotMotion.InitRobot(CRobotMotion.java:57)
  56. at jp.vstone.RobotLib.CSotaMotion.InitRobot_Sota(CSotaMotion.java:64)
  57. at main.main.main(main.java:20)
  58. java.io.EOFException
  59. at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2601)
  60. at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1319)
  61. at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371)
  62. at jp.vstone.network.TCPIPClient.getObject(TCPIPClient.java:134)
  63. at jp.vstone.RobotLib.InterpLockerClient.convLockKeytoTimerAddress(InterpLockerClient.java:122)
  64. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:466)
  65. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:416)
  66. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:404)
  67. at jp.vstone.RobotLib.CRobotMotion.ServoOn(CRobotMotion.java:783)
  68. at main.main.main(main.java:23)
  69. java.io.IOException: socket stream
  70. at jp.vstone.network.TCPIPClient.getObject(TCPIPClient.java:142)
  71. at jp.vstone.RobotLib.InterpLockerClient.convLockKeytoTimerAddress(InterpLockerClient.java:122)
  72. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:466)
  73. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:416)
  74. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:404)
  75. at jp.vstone.RobotLib.CRobotMotion.ServoOn(CRobotMotion.java:783)
  76. at main.main.main(main.java:23)
  77. java.io.EOFException
  78. at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2601)
  79. at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1319)
  80. at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371)
  81. at jp.vstone.network.TCPIPClient.getObject(TCPIPClient.java:134)
  82. at jp.vstone.RobotLib.InterpLockerClient.convLockKeytoTimerAddress(InterpLockerClient.java:122)
  83. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:466)
  84. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:416)
  85. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:404)
  86. at main.main.main(main.java:34)
  87. java.io.IOException: socket stream
  88. at jp.vstone.network.TCPIPClient.getObject(TCPIPClient.java:142)
  89. at jp.vstone.RobotLib.InterpLockerClient.convLockKeytoTimerAddress(InterpLockerClient.java:122)
  90. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:466)
  91. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:416)
  92. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:404)
  93. at main.main.main(main.java:34)
  94. java.io.EOFException
  95. at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2601)
  96. at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1319)
  97. at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371)
  98. at jp.vstone.network.TCPIPClient.getObject(TCPIPClient.java:134)
  99. at jp.vstone.RobotLib.InterpLockerClient.convLockKeytoTimerAddress(InterpLockerClient.java:122)
  100. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:466)
  101. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:416)
  102. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:404)
  103. at jp.co.mysota.mymain.main(mymain.java:38)
  104. at main.main.main(main.java:41)
  105. java.io.IOException: socket stream
  106. at jp.vstone.network.TCPIPClient.getObject(TCPIPClient.java:142)
  107. at jp.vstone.RobotLib.InterpLockerClient.convLockKeytoTimerAddress(InterpLockerClient.java:122)
  108. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:466)
  109. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:416)
  110. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:404)
  111. at jp.co.mysota.mymain.main(mymain.java:38)
  112. at main.main.main(main.java:41)
  113. java.io.EOFException
  114. at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2601)
  115. at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1319)
  116. at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371)
  117. at jp.vstone.network.TCPIPClient.getObject(TCPIPClient.java:134)
  118. at jp.vstone.RobotLib.InterpLockerClient.convLockKeytoTimerAddress(InterpLockerClient.java:122)
  119. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:466)
  120. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:416)
  121. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:404)
  122. at jp.co.mysota.mymain.main(mymain.java:50)
  123. at main.main.main(main.java:41)
  124. java.io.IOException: socket stream
  125. at jp.vstone.network.TCPIPClient.getObject(TCPIPClient.java:142)
  126. at jp.vstone.RobotLib.InterpLockerClient.convLockKeytoTimerAddress(InterpLockerClient.java:122)
  127. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:466)
  128. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:416)
  129. at jp.vstone.RobotLib.CRobotMotion.play(CRobotMotion.java:404)
  130. at jp.co.mysota.mymain.main(mymain.java:50)
  131. at main.main.main(main.java:41)
  132. main[1] > アプリケーションが終了しましたexitexit
  133. logout
  134. [1]+ Done java -Dfile.encoding=UTF8 -Djava.library.path=/usr/local/share/OpenCV/java/ -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=8765 -jar test.jar 2>&1
  135. ロボットとの通信を切断しました。
Sotaサポート
2025.11.05
Hiroshi Yoshikawa 様

お世話になります。Sotaサポートです。
頂いたエラーメッセージの下記部分より、ロボット本体内の「/home/vstone/vstonemagic/memdef.conf」のファイルを開けないことで問題が発生していると思われますが、こちらのファイルが機体内に存在するかご確認いただけますか?
java.nio.file.NoSuchFileException: /home/vstone/vstonemagic/memdef.conf
Hiroshi Yoshikawa
2025.11.05
お世話になっております.
ファイルが存在しないようです.
 
  1. pi@raspberrypi /home/vstone/lib $ cd /home/vstone/vstonemagic/
  2. pi@raspberrypi /home/vstone/vstonemagic $ ls
  3. app btn0L.sh btn1S.sh conf.txt menu power startup_run.sh svmeter.csv version vsmd_rpi
  4. btn01L.sh btn0S.sh btn4L.sh ipvoice menu.fifo send_image.sh startup.sh update version.sh wps
  5. btn01S.sh btn1L.sh btn4S.sh memdef0.csv operation_test sotalcc svlog.txt update.log volume
  6. pi@raspberrypi /home/vstone/vstonemagic $ ls memdef.conf
  7. ls: cannot access memdef.conf: No such file or directory
  8. pi@raspberrypi /home/vstone/vstonemagic $ cat memdef.conf
  9. cat: memdef.conf: No such file or directory

memdef0.csvというのはありますが,こちらでしょうか?
  1. pi@raspberrypi /home/vstone/vstonemagic $ cat memdef0.csv
  2. #adr,size,data,comment1,comment2
  3. #servo send,,,,
  4. 0x00a0,1,1,MU8_SBUS+SBUS_PROTOCOL,1:futaba
  5. 0x00a1,1,1,MU8_SBUS+SBUS_N,1��
  6. 0x00a2,1,1,MU8_SBUS+SBUS_ID0+0, servo#0 ID
  7. #servo read,,,,
  8. 0x00c0,1,1,MU8_SBUS_R0+SBUS_PROTOCOL,1:futaba
  9. 0x00c1,1,1,MU8_SBUS_R0+SBUS_N,1��
  10. 0x00c2,1,1,MU8_SBUS_R0+SBUS_ID0+0, servo#0 ID
  11. 0x00d0,1,0,MU8_SBUS_R1+SBUS_PROTOCOL,0:none
  12. 0x00e0,1,0,MU8_SBUS_R2+SBUS_PROTOCOL,0:none
  13. 0x00f0,1,0,MU8_SBUS_R3+SBUS_PROTOCOL,0:none
  14. #servo limit,,,,
  15. 0x0e00,2,-1500,MS16_SV_POSL0+2*0,
  16. 0x0e02,2,-1500,MS16_SV_POSL0+2*1,
  17. 0x0e04,2,-1500,MS16_SV_POSL0+2*2,
  18. 0x0e06,2,-1500,MS16_SV_POSL0+2*3,
  19. 0x0e08,2,-1500,MS16_SV_POSL0+2*4,
  20. 0x0e0a,2,-1500,MS16_SV_POSL0+2*5,
  21. 0x0e0c,2,-1500,MS16_SV_POSL0+2*6,
  22. 0x0e0e,2,-1500,MS16_SV_POSL0+2*7,
  23. #:,:,:,:,
  24. 0x0e40,2,1500,MS16_SV_POSH0+2*0,
  25. 0x0e42,2,1500,MS16_SV_POSH0+2*1,
  26. 0x0e44,2,1500,MS16_SV_POSH0+2*2,
  27. 0x0e46,2,1500,MS16_SV_POSH0+2*3,
  28. 0x0e48,2,1500,MS16_SV_POSH0+2*4,
  29. 0x0e4a,2,1500,MS16_SV_POSH0+2*5,
  30. 0x0e4c,2,1500,MS16_SV_POSH0+2*6,
  31. 0x0e4e,2,1500,MS16_SV_POSH0+2*7,
  32. #:,:,:,:,
  33. #servo enable,,,,
  34. 0x0048,2,1,MS16_SERVOEN,
  35. 0x004a,2,1,MS16_SVSENDEN,
  36. 0x004c,2,1,MS16_IXSENDEN,
  37. #IXDESC,,,,
  38. 0x0100,1,1,IX_TYPE,PCA9634
  39. 0x0101,1,20,IX_SIZE,20bytes
  40. 0x0102,1,0x04,IX_ADR,vs-rc019/vs-rc020
  41. 0x0103,1,0,IX_STS,
  42. 0x0104,2,0x0c80,LED0�Q�ƃA�h���X,MS16_IP_OPOS0+0x80
  43. 0x0106,2,0x0c82,LED1�Q�ƃA�h���X,MS16_IP_OPOS0+0x82
  44. 0x0108,2,0x0c84,LED2�Q�ƃA�h���X,MS16_IP_OPOS0+0x84
  45. 0x010a,2,0x0c86,LED3�Q�ƃA�h���X,MS16_IP_OPOS0+0x86
  46. 0x010c,2,0x0c88,LED4�Q�ƃA�h���X,MS16_IP_OPOS0+0x88
  47. 0x010e,2,0x0c8a,LED5�Q�ƃA�h���X,MS16_IP_OPOS0+0x8a
  48. #0x0110,2,0x0c8c,LED6�Q�ƃA�h���X,MS16_IP_OPOS0+0x8c
  49. 0x0110,2,0x008a,LED6�Q�ƃA�h���X,MS16_AUDIODIF
  50. 0x0112,2,0x0c8e,LED7�Q�ƃA�h���X,MS16_IP_OPOS0+0x8e
  51. 0x0114,1,1,IX_TYPE,PCA9634
  52. 0x0115,1,20,IX_SIZE,20bytes
  53. 0x0116,1,0x05,IX_ADR,vs-ix201
  54. 0x0117,1,0,IX_STS,
  55. 0x0118,2,0x0c90,LED0�Q�ƃA�h���X,MS16_IP_OPOS0+0x90
  56. 0x011a,2,0x0c92,LED1�Q�ƃA�h���X,MS16_IP_OPOS0+0x92
  57. 0x011c,2,0x0c94,LED2�Q�ƃA�h���X,MS16_IP_OPOS0+0x94
  58. 0x011e,2,0x0c96,LED3�Q�ƃA�h���X,MS16_IP_OPOS0+0x96
  59. 0x0120,2,0x0c98,LED4�Q�ƃA�h���X,MS16_IP_OPOS0+0x98
  60. 0x0122,2,0x0c9a,LED5�Q�ƃA�h���X,MS16_IP_OPOS0+0x9a
  61. #0x0124,2,0x0c9c,LED6�Q�ƃA�h���X,MS16_IP_OPOS0+0x9c
  62. 0x0124,2,0x008a,LED6�Q�ƃA�h���X,MS16_AUDIODIF
  63. 0x0126,2,0x0c9e,LED7�Q�ƃA�h���X,MS16_IP_OPOS0+0x9e
  64. #�C���e���W�F���g�}�C�N,,,,
  65. #0x0128,1,2,IX_TYPE,�C���e���W�F���g�}�C�N
  66. #0x0129,1,6,IX_SIZE,6bytes
  67. #0x012a,1,0x3a,IX_ADR,�C���e���W�F���g�}�C�N
  68. #0x012b,1,0,IX_STS,
  69. #0x012c,1,0,(�����g�p),(�����g�p)
  70. #0x012d,1,0,(�����g�p),(�����g�p)
  71. #end,,,,
  72. 0x012e,1,0,END,
  73. 0x012f,1,0,END,
  74. 0x0044,2,0x0100,MU16_IXBUSPTR,MU8_IXDESC
  75. #servo offset,,,,
  76. 0x0ec2,2,0,MS16_SV_OFS0+1*2,
  77. 0x0ec4,2,105,MS16_SV_OFS0+2*2,
  78. 0x0ec6,2,0,MS16_SV_OFS0+3*2,
  79. 0x0ec8,2,-105,MS16_SV_OFS0+4*2,
  80. 0x0eca,2,0,MS16_SV_OFS0+5*2,
  81. 0x0ecc,2,0,MS16_SV_OFS0+6*2,
  82. 0x0ece,2,0,MS16_SV_OFS0+7*2,
  83. 0x0ed0,2,0,MS16_SV_OFS0+8*2,
  84. #�g���N���~�b�^�쓮���o,:,,,
  85. 0x0054,2,20,�t���[����,
  86. 0x0056,2,150,�΍��p�x,
  87. 0x0058,2,50,���~�b�g�g���N,

memdef0.confの中身について,添付いただければと思います.
よろしくお願いいたします.
Sotaサポート
2025.11.06
お世話になります。

memdef.confは本来動作に必要なファイルのため、存在しない場合はロボット内部の設定・状態が通常と異なっている可能性があります。
可能であれば、下記を参考に一度環境を初期化・もしくは別のSDカードに展開して初期状態の環境を用意して改善するかご確認いただけますか?
https://sota.vstone.co.jp/sota/resource/faq/faq.php?faq_cd=21
Hiroshi Yoshikawa
2025.11.10
ありがとうございます.試し次第,結果を追記いたします.
Hiroshi Yoshikawa
2025.12.11
お世話になっております。初期状態から試したところ、うまくいきましたのでご報告いたします。 ご対応ありがとうございました。
この質問に回答する
 

Page Top