Category Archives: お知らせ

IntelliJベースIDE v2016.1と古いバージョンのセキュリティアップデート

IntelliJプラットフォームベースのIDEについて重要なアップデートをリリースいたしました。このアップデートは重大なセキュリティ脆弱性を修正しています。脆弱性は過去のバージョンにも存在するため、パッチもリリースしております。 この脆弱性を突いて攻撃した事例についての報告は受けておりませんが、可能な限り早くアップデートして頂くことを強く推奨いたします。 詳しくは以下にご説明いたします。 内蔵Webサーバの脆弱性 クロスサイトリクエストフォージェリー(CSRF)により攻撃者が悪意のあるWebページを使い、ユーザーの同意なしにローカルファイルシステムへ アクセスすることを許可します。 インターナルRPCの脆弱性 不必要に寛大なCORS(Cross-Origin Resource Sharing)設定により、攻撃者は悪意のあるWebサイトを使うことで様々なインターナルAPIエンドポイントを利用することができ、IDEで保存しているデータにアクセスしたり、IDEバージョンといったメタデータを収集したり、プロジェクトを開いたりできます。 この脆弱性を報告頂き、緊密に協力してくださったJordan Milne、この修正にあたり完璧なコラボレーションを発揮してくださったGoogleのAndroid Studioチームに感謝いたします。 アップデート方法 IDEの‘Check for Updates’よりアップデートするか、www.jetbrains.comより最新版をダウンロードしてください。過去のバージョンをお使いの方は以下のリンクを参考にしてください。 FAQ Q: どの製品/バージョンがアップデートされましたか? A: IntelliJプラットフォームベースの全ての製品に影響があります。以下の表でアップデートをリリースした最低のバージョンを示します。以下の表にあるバージョンまたはそれ以降のバージョンをお使いの場合はアップデートの必要があります。 製品 アップデートのあるバージョン(ビルド番号) AppCode 2.1 (129.772) CLion 1.0 (141.353) DataGrip 1.0 (143.1410.7) IntelliJ IDEA 12.1 (129.161) MPS 3.0 (129.350) … Continue reading

Posted in お知らせ | Leave a comment

Javaチャンピオンは無償でIntelliJ IDEA Ultimateをお使い頂けます

本日よりJavaチャンピオンの方は簡単な確認をするだけでIntelliJ IDEA Ultimateを無料で取得して頂けます。何年にも渡ってJetBrainsはJavaチャンピオンの方々と仕事上の関係にとどまらず、個人的にも知り合う機会が多くございました。継続的にIntelliJ IDEAやIntelliJプラットフォームベース製品のフィードバックを沢山頂いております。そこで感謝の気持ちをIntelliJ IDEA Ultimateの提供をもって表せればと考えております。 現在Javaチャンピオンの方々はhttps://www.jetbrains.com/shop/eform/javaChampionよりお申し込みいただけます。java.netのリンクを必ず含めてください。 IntelliJ IDEA UltimateはJavaチャンピオン以外にも、オープンソースプロジェクト、学生や教員、クラスルーム環境でお使いになる教授やトレーナーに対して無償で提供しております(IDEA以外の製品も含みます)。 [原文]

Posted in お知らせ | Leave a comment

JetBrains Toolbox – リリースとバージョニングの変更

サブスクリプションへ移行することのゴールの一つに、1年に1回メジャーリリースを行うリリースサイクルから、バージョニングとは関係なしに継続的に価値を提供するしくみへと変わることがあります。 このモデルの変更によって今後バージョンが意味するところは何なのかという質問がありました。一般的にユーザーが新しいバージョンで気になること言えば次のようなものです: 新バージョンは何を提供してくれるのか? 新バージョンによって自分の作業がどう変わるのか? 新バージョンを利用することは可能なのか? しかし、これらの質問よりもよくある質問に答えることにしましょう。つまり、IntelliJファミリーのIDEに共通な機能がありますが、一つの製品でなされた新機能やバグフィックスが他の製品にも反映されているのかという声を良く伺います。使っているのが複数製品であるか単一製品であるかにかかわらず、共通的な新機能や修正がいつ個々の製品に反映されるのかは明確でなければなりません。 別の問題、といってもこれは内部的な問題ですが、我々のバージョンの管理です。複数の製品、複数のリリースを年間何度もおこなっていくにあたってバージョン番号を上げていきたいということです。 シングル・バージョン。並行リリース。 我々はJetBrainsツールボックスにあるすべての製品について同一のバージョン体系に変更します。これらにはすべてのIDEおよび.NETツールが含まれています。 加えて、新たなバージョン体系を導入します。これは次のようなフォーマットで表されます。 YYYY.R yyyyが表すのは年です。rはその年のリリースを表します。一年のうちに複数回のリリースをするという狙いがここには込められています。各製品には各製品独自のビルドナンバーがあり、それはyyyy.r.n.m*という形で表されます。 例えば、IntelliJ IDEAの2016.2というバージョンでそのビルドナンバーが2016.2.1.10というものをリリースするでしょう。引き続きWebStormの2016.2でビルドナンバーが2016.2.5.30というものをリリースするでしょう。それらはともに2016.2のリリースの一部です。 結果、現在JetBrainsツールボックス製品でEAPとして提供しているものはバージョン2016.1としてリリースされることになります。 この変更によりバージョン方式が統一されるだけでなく、平行リリースも行われるようになります。つまり、JetBrainsツールボックスの製品は年間を通して同じ回数のリリースがあり、それらは一定の期間内にリリースされます。 *なお新しいバージョン体系の適用はバージョン2016.1から始まりますが、関連作業が全て終わり完全に統一されるのは2016.2となる見込みです。 これによって何がもたらされるか? この変更がユーザーおよび我々に幾つかの利点があると考えています。 ユーザーの利点 頻繁な製品のアップデート サブスクリプション制への移行の目標は年間のリリース回数を増やすことでした。これにより新機能や改善を準備出来たらメジャーリリースを待たずに提供できるようになります。 年ベースのバージョン 2016.2というバージョンは単純な11よりも意味にあふれています。なぜなら最近のリリースかどうか年という観点でわかりますし、その年のいつのリリースかもわかります。 並行バージョン すべての製品が同じバージョンになります。WebStormの2016.2とIntelliJ IDEA2016.2とを比較するのはWebStormの11とIntelliJ IDEAの16との比較に比べて容易にできます。 可用性 サブスクリプションが有効であるなら、最新バージョンが利用可能です。どのバグフィックス更新がお手持ちの恒久フォールバックライセンスで利用可能かどうかについては、JetBrainsアカウントからご覧になれます。 JetBrainsの利点 より頻繁なリリース JetBrainsは価値を提供することに注力しており、新機能か修正かにかかわらず、提供可能になったらすぐにリリースしたいと考えています。そして、1年に1度というゆっくりなペースでメジャーバージョンアップリリースするような体系を保持するべきではないと考えています。より頻繁なリリースにより我々はより早く価値を提供し、より速くフィードバックが得られます。 年ベースのバージョン 複数の製品を扱っているためコラボレーションやリリースプランニングにとって製品のリリース、新機能やバグフィックスのリリースがいつだったかをバージョンナンバーによりひと目で判別がつくのは非常に都合が良い。新しいバージョン体系は我々によりよい時間のメンタルモデルを与えてくれる。 並行した内部・公開バージョン 我々は共通のプラットフォームを利用しているため、内部的にはツールがシングル・バージョン体系に従っている方がより都合がよくなります。各製品のバージョン番号も我々のブランチに合わせてあるため、実際のビルドナンバーであるほうが都合がよくなります。この変更に唯一直接的な影響を受けない製品は.NETツール群です。しかし我々の新製品Project Rider .NET IDEはIntelliJプラットフォームを共有するほか、それらの製品はJetBrainsツールボックスから利用可能であるため、単純化して同一のモデルに従うのがよいと判断しました。 … Continue reading

Posted in お知らせ | Leave a comment

Kotlin 1.0 リリース: JVMとAndroid向けの実用的(Pragmatic)言語

Kotlinバージョン1.0をついにリリースいたしました! 長く、エキサイティングな道のりでしたが、ついに1.0のリリースとなりました。ロゴも新しくなりました: See discussions on Reddit and Hacker News   Kotlin #とは? KotlinはJVMとAndroid向けのオブジェクト指向かつ関数型な実用的(Pragmatic)言語です。相互運用性、安全性、明瞭性、そしてツールサポートにフォーカスしています。 汎用言語であるKotlinはJavaが動作する場所であればサーバサイドアプリケーション、モバイルアプリケーション(Android)、デスクトップアプリケーションを含むどこでも動作します。以下のメジャーなツールやサービスに対応しています: IntelliJ IDEA、Android Studio、Eclipse Maven、Gradle、Ant Spring Boot (KotlinサポートがKotlin 1.0と同時にリリースされました!) GitHub、Slack、Minecraft Kotlinの焦点として大事なのが相互運用性、JavaとKotlinをミックスしたプロジェクトのシームレスなサポートです。これにより、既存プロジェクトを段階的に簡潔かつよりタイプセーフなコードに移行していくことが可能です。さらに、Kotlinは拡張可能な標準ライブラリを備えており、バイトコードのフットプリントを小さく抑えます。もちろん、どんなJavaライブラリもKotlinから呼び出せますし、逆も然りです。 実用的(Pragmatic) #とは? 長きに渡るプロジェクトでは人のコアバリューを理解することが非常に大切です。Kotlinのデザインを一言で表すならば実用主義(pragmatism)です。Kotlinの主眼は早い段階から新発明や、研究ではありませんでした。結果的に沢山の発明がありましたが、あくまでプロジェクトのポイントではありません。我々が開発してきた物はだれもが利用可能なバグを防ぐための型システムであったり、コードの再利用を促す抽象化メカニズムです。我々はこの言語を素晴らしい物とすべく常にユースケースにフォーカスしてきました。 特に、既存コードとの相互運用性は重要です。全てをスクラッチから書き直すことをだれが望むでしょう?私にもそんなことをしたいと思ったことがありました・・・極めて稀ですが。Kotlinの開発はJavaとの相互運用性やMavenインテグレーション、Android互換性を無視すれば極めて簡単なものだったでしょう。アプローチもよりエレガントになったかもしれません。しかし、エレガントであることはゴールではありません。ゴールは便利(useful)であることです。新しく覚えること、新しく発明すること、スクラッチから繰り返すことが少ないほど、再利用はしやすく、より便利ツールとなり得ます。 Q. なぜKotlinは独自のパッケージマネージャーやビルドシステムを持たないのですか? A. すでにMavenやGradleがあり、多大な既存資産を再利用できることは多くのプロジェクトで重要だからです。 Q. 新しくデザインし直すことをせず、なぜJDK互換のコレクションインターフェースを開発することに注力したのですか? A. 既存のJavaコードはJDKのコレクションフレームワークに多大に依存しており、言語の境界をまたがる際に変換をするのは面倒だからです。 Q. なぜKotlinはJava6のバイトコードをサポートするのですか? A. 多くの人はいまだにJava6を使っているからです(Androidデベロッパが多いですが、Androidだけではありません). … Continue reading

Posted in Kotlin, お知らせ | Leave a comment

IntelliJ IDEA 16 EAP新ビルド – Spring Bootサポートの改善とKotlin 1.0 RC

新しいIntelliJ IDEA 16 EAPビルドをお試し頂きます。バグフィクス内容についてはリリースノートをご覧ください。 Spring Boot Spring Bootをお使いの方は最新ビルドを試すべきです!Spring Bootサポートは多岐にわたって改善されており、コードアシストも賢くなっております。 configuration propertyのFind usages カスタムconfiguration propertyについてfind usagesで参照しているコードを探し出すことが出来るようになりました。アプリケーションコンフィギューレーションファイルや、メタデータファイルにてfind usagesが効くようになりました。この機能を働かせるには、ガターアイコン(行の左側のアイコン)をクリック(Navigate→Related Symbolと同等)か、Show UsagesをAlt+Ctrl+F7 (Mac OS X:Alt+Cmd+F7)より呼びだしてください。 application.ymlの値 YAMLの設定ファイル内でコード補完とエラーハイライトが効くようになりました。 キーの補完について沢山の問題を修正しました。 banner.txt 皆さんお好きのカスタムバナーですが、ここでもスマート補完が効くようになりました: テスト @SpringApplicationConfigurationがテストコンテクストの設定で検出されるうようになりました。 Spring Boot starterのインポート よく使うアノテーション/クラスについて賢いクイックフィックスが働くようになりました: Spring Initializr 他に便利な点として: Nameに設定した値が、プロジェクト名だけでなくArtifact名にも反映されるようになりました starterで利用出来ないモジュールについて、必要最小バージョンをツールチップで教えてくれます SpringとSpring MVCサポートも近々強化される予定ですのでお楽しみに! Kotlin … Continue reading

Posted in お知らせ | Leave a comment

IntelliJ IDEA 16 EAP新ビルドのリリース – デバッガの改善とGitワークツリーのサポート

今週のIntelliJ IDEA 16 EAPリリースの時間がやって参りました。いつも通りバグフィクスと、新機能が含まれています。注目すべきはデバッガ、VCSインテグレーションとユーザーインターフェースの改善です。 デバッガ Javaアプリケーションをデバッグする際、Groovy表記をEvaluate ExpressionとWatchで使えるようになりました。 これまではGroovyコードをデバッグする際しか出来ませんでした。Groovy表記はシンプルで、(特にコレクションを操作する際の)表現力が高く便利です。 この機能を利用するにはGroovyランタイムをクラスパスに入れておく必要があります。 また、マルチスレッドアプリケーションのデバッグを行いやすくしました。これまでステップオーバー実行時、同じブレークポイントで止まっている他のスレッドは一緒にリジューム(再稼働)していました(Suspend policyをAllと設定している場合)。今リリースにより、この挙動をSettings→Build, Execution, Deployment→Debugger→SteppingのResume only the current thread(このスレッドのみリジューム)オプションにより変更出来るようになりました。 VCSインテグレーション Gitユーザーに嬉しいのが、IDEAがついにworktreesをサポートしたことです。この機能はGit 2.5で実装されたもので、単一リポジトリのクローンをシンプルにするものです。リポジトリーのクローンを丸ごと作るのではなく、軽量なワークツリーを作成する機能です。IDEAがワークツリーをサポートしたことで、これまでのリポジトリと同様に扱うことが出来るようになりました。 Git Logのルックアンドフィールは見栄えの良いツールバーとより薄いスプリッタで改善されました。またテーブルヘッダーは無くしました。 Show/Find usages もう一つインターフェースについて、Show usagesポップアップのスピードサーチを改善しました。マッチ箇所をハイライトすることで、ナビゲーションをしやすくしました。 またFind usagesツールウィンドウでの絞り込み時、ファイル名だけでなくツールウィンドウ内のテキスト全てをマッチ対象としました。 さらに、code cleanup インスペクション(英語)をRun Inspection by Nameより走らせた場合、ダイアログ内でクイックフィックスを適用出来るようになりました。 今回のリリースの主な新機能は以上です。是非お試し頂き、いつも通り掲示板へのフィードバックやYouTrackへのバグレポートをお待ちしております。 Develop with pleasure! 原文

Posted in お知らせ | Leave a comment

IntelliJ IDEA 16 EAP最新版リリース – エディタとGitインテグレーションの改善

毎週IntelliJ IDEA 16 EAPの新しいビルドをリリースしています。最新ビルドではいつも通り皆様より頂戴したバグの修正と共に、Gitインテグレーションとコードエディタの改善が施されています。 ステートメントの右/左への移動 コードステートメントをCtrl + Shift + Up/Down (Cmd + Shift + Up/Down for OS X.)というショートカットで上に下に移動することは以前から出来ました。コードの並びを直す際に便利ですが、時には右に左に移動したくなることがあります(例えばXMLエレメントの属性、メソッドパラメータ、配列初期化コードなどの順序を直す場合などです)。 最新ビルドではAlt + Ctrl + Shift + ←/→ (Mac OX X:Alt + Cmd + Shift + ←/→)とうショートカットで可能になりました。 VCSインテグレーション Gitブランチ操作に便利なアクションを二つ追加しました。Branches ポップアップより起動できます: Checkout with RebaseとRenameです。 Checkout with Rebaseアクションは手元の作業状況を同期させるのに必要なオペレーションCheckout→Rebaseをいっぺんに行うものです。 インタラクティブなrebaseをVCS → Git→ Rebaseより行う場合、IntelliJ … Continue reading

Posted in お知らせ | Leave a comment

IntelliJ IDEA 16 EAP新ビルド – staticインポートをより楽しく簡単に!

IntelliJ IDEA 16 EAPの最新ビルドをお試しください。多くの不具合の修正と共に、いくつかの改善も施されております。 細かいですが、便利な点としてstaticインポートのハンドリングの改善があります。 これまでもstaticメソッドのインポートを行うクイックフィックスを提供してきましたが、良く必要とされるメソッドについてはクイックフィックスを起動しなくてもインポート候補を挙げてくれるようになりました: staticの定数についても候補を挙げてくれます: 設定→Editor→General→Auto Import→”Add unambiguous imports on the fly”オプションを有効にしておけば、曖昧なstaticメンバーについても自動的にインポートしてくれます。 いつも通り、掲示板へのフィードバックやYouTrackへのバグレポートをお待ちしております。 Develop with Pleasure! 原文

Posted in お知らせ | Leave a comment

Project Rider – 新しい C# IDE #jetbrainsrider

本日、NDC Londonにて新しいプロジェクトを発表しました。IntelliJプラットフォームとReSharperのテクノロジーベースの新しいクロスプラットフォームC# IDEです。 コードネームProject Riderは、クイックフィックスやインスペクション、スマートナビゲーションなど、ReSharperやIntelliJベースIDEですでにおなじみの機能を搭載しています。ReSharperはVisual Studioの機能拡張ですが、Project Riderは完全なスタンドアロンIDEです。 まだごくごく初期段階にありますが、既に以下の機能を搭載しています: ナビゲーション – スマートナビゲーションはJetBrains IDEの重要機能で、Project Riderも例外ではありません。Go To Type、Go To File、IntelliJプラットフォームのSearch Everywhere(どこでも検索)によるgo to symbols、types、files、果ては検索ポップアップ内から設定やアクションの呼び出しまで行えます。 Navigate Toポップアップメニューももちろん搭載しています。基底クラスや派生クラスへのジャンプ、ツールウィンドウへの利用箇所の検索結果表示などが可能です。 編集 – タイピングアシスト、ブレースの挿入や自動フォーマット、ライブテンプレート(ReSharper 10のpostfix templatesも含む)、quick infoツールチップ、継承関係のナビゲーションを楽にするガターアイコン、コンテクトアクションなど、幅広い便利な編集機能を実装済みです。 インスペクション – ReSharperでサポートしているほとんどのインスペクションはエラー、警告、推奨、ヒントとしてエディタ内に表示されます。解決出来ないシンボルは赤く、コードの問題はアンダーラインで表示されるなど、おなじみの形式になっています。 Alt+Enter – JetBrains IDEで必要不可欠なのがAlt+Enterキーバインドのサポートです。ReSharperで利用可能なクイックフィックスやコンテクストアクションも利用できます。Project Riderはファイル全体へまとめてアクションを適用したり、インスペクションの重大度をメニューから変更することもできます。 リファクタリング – まだ数は限定されますが、リファクタリングも可能です。多くのリファクタリングアクションは何かしらのユーザーインターフェースが必要で、まだ実装されていないものも多くあります。現在Project Riderではシンボルのリネーム、変数の導入/インライン化、インスペクションでハイライトされているコードをAlt+Enterで修正することが出来ます。 … Continue reading

Posted in お知らせ | Leave a comment

IntelliJ IDEA 16 EAP リリース – 今後はより早いリリースサイクルに

そろそろクリスマスとなりますが、我々もプレゼントを準備しましたIntelliJ IDEA 16です! 今日から我々は一年に「平均」数回のリリースをおこなうサイクルに変更することにしました。これにはバグフィックスによるアップデートも含みます。 (これまでは一つのメジャーリリースとマイナーアップデートだけでした) さて、まずはIntelliJ IDEA 16 EAPを見てみましょう。 これはあなたを少し幸せにしてくれるグッズをもたらします。 IntelliJ IDEA 16では エディターで右から左に書いていく言語 (アラビア語, ヘブライ語)をサポートするようになります。 IntelliJ IDEAのプロジェクトモデルはGradleのものと整合するようになります。さらにカスタムソースセットのサポートや、 個々のソースセットの依存性を解決するようになります。この改良は多くのイシューを解決します。 また、IntelliJ IDEAはビルドスクリプトで定義されたEARアーティファクト解決し、プロジェクト構造からそれらを自動で設定するようになります。 Gradleタスクを走らせたときはビューモードをツリー表示からテキスト表示に切り替えられるようになります。 デバッグする際に、you will be provided with better name matching, スロットの値に任意の値を設定したり、値の評価をしたりできます。 デバッガーは現在のスレッドを他のスレッドがブロックしていることを検知し、そのスレッドの実行を促します。 Gitや他のVCSでマージする場合も文字ごとの比較、ハイライトにより簡単になります。 タグのチェックアウトまたはリビジョンのチェックアウトはプロジェクトに登録されたすべてのリポジトリーに対して適用できます。 GuavaのコードをJava 8 のコードにマイグレーションしたい人のために、幾つかのクイックフィックスを提供しました。 それによりFluentIterable、Function、Optional、PredicateといったクラスをJava 8のものに取り替えることができます。 Android … Continue reading

Posted in お知らせ | Leave a comment