🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Eclipse Plugin

Eclipseは、IBMによって開発された統合開発環境 (IDE) の一つです。高機能ながらオープンソースであり、Javaをはじめとするいくつかの言語に対応しています。Eclipse-Pluginを使う事でIDEの拡張を行う事が可能です。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Q&A

解決済

1回答

2255閲覧

eclipseでconnectIQのアプリを開発したい

jajajajan

総合スコア5

Eclipse Plugin

Eclipseは、IBMによって開発された統合開発環境 (IDE) の一つです。高機能ながらオープンソースであり、Javaをはじめとするいくつかの言語に対応しています。Eclipse-Pluginを使う事でIDEの拡張を行う事が可能です。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

0グッド

0クリップ

投稿2019/11/06 07:02

編集2019/11/08 01:15

前提・実現したいこと

connectIQのアプリ開発をしようと考えています。
言語はMonkeyCです。
この言語についての情報が少なく、手探りで始めたところプログラムが上手く実行できませんでした。
プログラムはeclipseで書いており、プログラムの中身は簡単なTimerで、環境構築などはこちら(http://yaonobibouroku.blogspot.com/p/blog-page_84.html)を参考に行いました。

プログラムを実行は(https://www.programmableweb.com/news/how-to-develop-wearable-apps-connect-iq/sponsored-content/2016/10/11)を参考に行いましたが、シミュレーターに何も表示されませんでした。

発生している問題・エラーメッセージ

シミュレーターに何も表示されない。
実行時に、コンソール部に
BUILD: C:\Users\wasyo\garmin\pleiades-2019-09-java-win-64bit-jre_20191007 (1)\pleiades\java\11\bin\java -Dfile.encoding=UTF-8 -Dapple.awt.UIElement=true -jar C:\Users\wasyo\garmin\samples\connectiq-sdk-win-3.1.4-2019-09-17-f1e7e9687\bin\monkeybrains.jar -o "C:\Users\wasyo\garmin\pleiades-2019-09-java-win-64bit-jre_20191007 (1)\pleiades\workspace\Timer\bin\Timer.prg" -w -y C:\Users\wasyo\garmin\samples\connectiq-sdk-win-3.1.4-2019-09-17-f1e7e9687\samples\Timer\source\TimerView.mc -d fr235_sim -s 1.3.0 -f "C:\Users\wasyo\garmin\pleiades-2019-09-java-win-64bit-jre_20191007 (1)\pleiades\workspace\Timer\monkey.jungle"
BUILD: エラー: java.security.InvalidKeyException: invalid key format
BUILD: java.security.spec.InvalidKeySpecException: java.security.InvalidKeyException: invalid key format
BUILD: at java.base/sun.security.rsa.RSAKeyFactory.engineGeneratePrivate(RSAKeyFactory.java:251)
BUILD: at java.base/java.security.KeyFactory.generatePrivate(KeyFactory.java:390)
BUILD: at com.garmin.connectiq.common.signing.KeyUtils.getPrivateKey(KeyUtils.java:127)
BUILD: at com.garmin.connectiq.common.signing.KeyUtils.getPrivateKey(KeyUtils.java:106)
BUILD: at com.garmin.connectiq.common.signing.KeyUtils.getPrivateKey(KeyUtils.java:91)
BUILD: at com.garmin.connectiq.common.signing.KeyUtils.getPrivateKey(KeyUtils.java:55)
BUILD: at com.garmin.monkeybrains.Monkeybrains.run(Monkeybrains.java:2240)
BUILD: at com.garmin.monkeybrains.Monkeybrains.simpleMain(Monkeybrains.java:254)
BUILD: at com.garmin.monkeybrains.Monkeybrains.simpleMain(Monkeybrains.java:236)
BUILD: at com.garmin.monkeybrains.Monkeybrains.main(Monkeybrains.java:283)
BUILD: 原因: java.security.InvalidKeyException: invalid key format
BUILD: at java.base/sun.security.pkcs.PKCS8Key.decode(PKCS8Key.java:330)
BUILD: at java.base/sun.security.pkcs.PKCS8Key.decode(PKCS8Key.java:355)
BUILD: at java.base/sun.security.rsa.RSAPrivateCrtKeyImpl.<init>(RSAPrivateCrtKeyImpl.java:130)
BUILD: at java.base/sun.security.rsa.RSAPrivateCrtKeyImpl.newKey(RSAPrivateCrtKeyImpl.java:80)
BUILD: at java.base/sun.security.rsa.RSAKeyFactory.generatePrivate(RSAKeyFactory.java:356)
BUILD: at java.base/sun.security.rsa.RSAKeyFactory.engineGeneratePrivate(RSAKeyFactory.java:247)
BUILD: ... 9 more
BUILD: 使用法: monkeyc [-a <arg>] [-d <arg>] [-e] [--Eno-invalid-symbol] [-f <arg>] [-g]
BUILD: [-h] [-i <arg>] [-m <arg>] [-o <arg>] [-p <arg>] [-r] [-s <arg>] [-t] [-u
BUILD: <arg>] [-v] [-w] [-x <arg>] [-y <arg>] [-z <arg>]
BUILD: -a,--apidb <arg> API import file
BUILD: -d,--device <arg> Target device
BUILD: -e,--package-app Create an application package.
BUILD: --Eno-invalid-symbolDo not error when a symbol is found to be invalid
BUILD: -f,--jungles <arg> Jungle files
BUILD: -g,--debug Print debug output
BUILD: -h,--help Prints help information
BUILD: -i,--import-dbg <arg> Import api.debug.xml
BUILD: -m,--manifest <arg> Manifest file
BUILD: -o,--output <arg> Output file to create
BUILD: -p,--project-info <arg>projectInfo.xml file to use when compiling
BUILD: -r,--release Strip debug information
BUILD: -s,--sdk-version <arg> SDK version to target
BUILD: -t,--unit-test Enables compilation of unit tests
BUILD: -u,--devices <arg> devices.xml file to use when compiling
BUILD: -v,--version Prints the compiler version
BUILD: -w,--warn Show compiler warnings
BUILD: -x,--excludes <arg> Add annotations to the exclude list
BUILD: -y,--private-key <arg> Private key to sign builds with
BUILD: -z,--rez <arg> Resource file
BUILD: 完了
Aborting launch due to failed build.
と出てくる。

該当のソースコード

MonkeyC

1TimerApp.mc 2// 3// Copyright 2016 by Garmin Ltd. or its subsidiaries. 4// Subject to Garmin SDK License Agreement and Wearables 5// Application Developer Agreement. 6// 7 8using Toybox.Application; 9 10class TimerApp extends Application.AppBase { 11 12 function initialize() { 13 Application.AppBase.initialize(); 14 } 15 16 // onStart() is called on application start up 17 function onStart(state) { 18 } 19 20 // onStop() is called when your application is exiting 21 function onStop(state) { 22 } 23 24 // Return the initial view of your application here 25 function getInitialView() { 26 return [ new TimerView(), new InputDelegate() ]; 27 } 28 29} 30 31TimerDelegate.mc 32// 33// Copyright 2016 by Garmin Ltd. or its subsidiaries. 34// Subject to Garmin SDK License Agreement and Wearables 35// Application Developer Agreement. 36// 37 38using Toybox.WatchUi; 39 40class InputDelegate extends WatchUi.BehaviorDelegate { 41 42 function initialize() { 43 WatchUi.BehaviorDelegate.initialize(); 44 } 45 46 function onMenu() { 47 timer1.stop(); 48 return true; 49 } 50} 51 52TimerView.mc 53// 54// Copyright 2016 by Garmin Ltd. or its subsidiaries. 55// Subject to Garmin SDK License Agreement and Wearables 56// Application Developer Agreement. 57// 58 59using Toybox.WatchUi; 60using Toybox.Graphics; 61using Toybox.Timer; 62 63var timer1; 64var timer2; 65var timer3; 66var count1 = 0; 67var count2 = 0; 68var count3 = 0; 69 70class TimerView extends WatchUi.View { 71 72 function initialize() { 73 WatchUi.View.initialize(); 74 } 75 76 function callback1() { 77 count1 += 1; 78 WatchUi.requestUpdate(); 79 } 80 81 function callback2() { 82 count2 += 1; 83 WatchUi.requestUpdate(); 84 } 85 86 function callback3() { 87 count3 += 1; 88 WatchUi.requestUpdate(); 89 } 90 91 function onLayout(dc) { 92 timer1 = new Timer.Timer(); 93 timer2 = new Timer.Timer(); 94 timer3 = new Timer.Timer(); 95 96 timer1.start(method(:callback1), 500, true); 97 timer2.start(method(:callback2), 1000, true); 98 timer3.start(method(:callback3), 2000, true); 99 } 100 101 function onUpdate(dc) { 102 var string; 103 104 dc.setColor(Graphics.COLOR_BLACK, Graphics.COLOR_BLACK); 105 dc.clear(); 106 dc.setColor(Graphics.COLOR_WHITE, Graphics.COLOR_TRANSPARENT); 107 string = "Count: " + count1; 108 dc.drawText(40, (dc.getHeight() / 2) - 30, Graphics.FONT_MEDIUM, string, Graphics.TEXT_JUSTIFY_LEFT); 109 string = "Count: " + count2; 110 dc.drawText(40, (dc.getHeight() / 2), Graphics.FONT_MEDIUM, string, Graphics.TEXT_JUSTIFY_LEFT); 111 string = "Count: " + count3; 112 dc.drawText(40, (dc.getHeight() / 2) + 30, Graphics.FONT_MEDIUM, string, Graphics.TEXT_JUSTIFY_LEFT); 113 } 114 115} 116

試したこと

エラー文から環境面でのミスを考え、
・SDKのインストール手順に不備があったのではと思いインストールやり直し
・実行構成をプロジェクトの選択のみ「Timer」に固定し、その他の組み合わせ(SDKのバージョン)を試せるだけ試した。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

Python使うことにしたので、MonkeyC使うのやめました

投稿2019/11/13 07:52

jajajajan

総合スコア5

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問