タグ

javaに関するsh2ysdのブックマーク (9)

  • Java 21新機能まとめ - Qiita

    Java 21が2023/9/19にリリースされました。 https://mail.openjdk.org/pipermail/jdk-dev/2023-September/008267.html The Arrival of Java 21! LTSであり、パターンマッチングや仮想スレッドが正式化され、プレビューとして入ったString Templatesや無名クラス&インスタンスメインメソッドも面白い機能なので、大切なリリースになっていると思います。 詳細はこちら JDK 21 Release Notes Java SE 21 Platform JSR 396 OpenJDK JDK 21 GA Release APIドキュメントはこちら Overview (Java SE 21 & JDK 21) 追加されたAPIまとめはこちら https://docs.oracle.com/en/

    Java 21新機能まとめ - Qiita
  • Java17雑感 - 日々常々

    LTSとなるJava17が出ました。組織が今後もJavaを使っていけるかの試金石になるバージョンだと思います。 実際のとこLTSだから特別安定してるとかそんなことはないと思うし、6バージョン(3年)ごとにLTSにするってのもたぶんOracleさんが言ってみただけで、いろんなとこがそれに乗っかってるから、実質的に節目になってるに過ぎない。はず。 その程度のものなんだけど、私のようなのは乗っかりますし、たぶん多数派なんじゃないかなぁ……この派閥が運用で使うJavaのバージョンは8、11、17で、他のバージョンは評価に使うくらいでしょう。 11から17のジャンプになるんで、かなりたくさんの変更がありますが、業務アプリケーションの表層に関係するものはそこまで多くありません。パフォーマンスとかに影響のあるものは多々ありますが、基的には早くなるはずで、問題になることは稀です。稀なことはよくあるんです

    Java17雑感 - 日々常々
  • イマドキのJava徹底入門(5) Javaのモジュールシステムを理解しよう(その2)

    クラスパスとモジュールパスの違い 前回は、Java 9で導入された新しいモジュールシステムについて、その概要や基的な使用方法を解説した。そこでも触れたように、Java 9以降のJavaでは標準ライブラリやランタイムそのものが新しいモジュールシステムの仕組みの上で動作する。 それでは、java 8以前に作られたような、モジュールに対応していないプログラムやライブラリとの互換性はどうなっているのだろうか。今回はその辺りの仕組みについて解説したい。 従来(Java 8以前)のJavaアプリケーションでは、コンパイラやJVMがクラスやパッケージを見つける仕組みとしてクラスパスが利用されていた。Javaプログラムのコンパイル時や実行時は、クラスパス上にあるクラスやパッケージが走査されて読み込まれる。任意の場所にあるクラスやパッケージを利用できるようにしたい場合は、javac や java コマンド

    イマドキのJava徹底入門(5) Javaのモジュールシステムを理解しよう(その2)
  • 第3回 Java 9のモジュール機能で何が変わるのか[JavaOne2017] | gihyo.jp

    2017年9月にリリースされたJava 9にはさまざまな新機能が追加されていますが、中でもとりわけ影響度が大きいのがモジュール機能です。この機能の導入にともなって、JDK 9には旧バージョンとの互換性を伴わないいくつかの修正が加わっているからです。すなわち、既存のアプリケーションやライブラリがJava 9ではそのまま動かない可能性がある、ということです。 10月1日から5日の5日間に渡って開催されたJavaOne 2017でも、このモジュール機能は大きなトピックのひとつとして挙げられ、多くのセッションが開かれました。レポートでは、それらのセッションで紹介された内容も踏まえながら、Java 9のモジュール機能についていま一度おさらいします。 モジュール機能の追加に至る紆余曲折 Javaへのモジュール機能の追加に関する議論がスタートしたのは10年以上も前のことになります。Javaアプリケーシ

    第3回 Java 9のモジュール機能で何が変わるのか[JavaOne2017] | gihyo.jp
  • 「Spring Native」ベータ版公開、GraalVMによりSpring FramworkのJava/Kotlinアプリをネイティブイメージにコンパイル。JavaVMに依存せず瞬時に起動可能

    「Spring Native」ベータ版公開、GraalVMによりSpring FramworkのJava/Kotlinアプリをネイティブイメージにコンパイル。JavaVMに依存せず瞬時に起動可能 Spring Frameworkの開発チームとGraalVMの開発チームは、GraalVMを用いてSpring Frameworkのアプリケーションをネイティブイメージにコンパイルする「Spring Native」がベータ版として公開されたことを発表しました。 Announcing Spring Native Beta! Read the blog post https://t.co/5klXV6kSVB and check out the video for more details. #spring #native #graalvm https://t.co/83pI3vNYEr — Spri

    「Spring Native」ベータ版公開、GraalVMによりSpring FramworkのJava/Kotlinアプリをネイティブイメージにコンパイル。JavaVMに依存せず瞬時に起動可能
  • Java7からJava16までの変遷。 - Qiita

    まえがき ずっとJava11を使っていました。そのためすっかりラムダ式やStreamAPIでの書き方に慣れていたのですが、最近Java7を使って稼働しているプロジェクトに異動したので、何ができて何ができないのか、ちょっと調べてみました。 Javaの変遷 私見ですが主要だと思う仕様変更を並べてみました。アプリ実装に関係する部分のみピックアップしています。 このバージョンのこれは入れておいたほうが良いよ!との意見がありましたらコメントにぜひお願いします。 Java8 2014/03/18 正式リリース(GA) https://openjdk.java.net/projects/jdk8/ ラムダ式 https://openjdk.java.net/projects/lambda/ https://qiita.com/sano1202/items/64593e8e981e8d6439d3 pub

    Java7からJava16までの変遷。 - Qiita
  • レガシーシステムをDocker環境へ移行させた話

    はじめに初めまして、FinatextグループのK-ZONEチームでインターンをしている松永と申します. 現在インターンではバーチャル株投資ゲームの「トレダビ」の改善を行っています. トレダビを長く運用し続けてきた弊社ですが、長年の運用から技術的負債が溜まっていました. その中の一つに、トレダビのローカルの開発環境でゲーミフィケーションサーバ(トレダビにおいてゲーム的な要素を担当するサーバ)がDocker上で動いておらず、ローカルで開発を進める際に特定の画面の確認ができないという問題がありました. この問題をどのように解決したかについて紹介します. トレダビの開発環境についてトレダビはRuby on Rails + MySQL + Java(ゲーミフィケーションサーバ)で運用されており、AWSの開発環境では以下のような構成で動作しています. しかし、トレダビのローカルの開発環境ではゲーミフィ

    レガシーシステムをDocker環境へ移行させた話
  • Mavenの基本勉強メモ - Qiita

    ずっと Gradle 使ってたけど、お仕事で Maven をゴリゴリに使わないといけなくなったのでお勉強。 Maven とは Java のビルドツール。OSS。 Apache Ant に代わるものとして作られたらしい。 読み方は「メイヴン」または「メイヴェン」(自分はメイヴン派)。 結構昔からあるけど1、現在も開発が続けられているし、 Maven を採用しているプロジェクトも多い印象。 2020年現在、Java のビルドツールといえば Maven か Gradle が選ばれることが多い(と思う)。 2020年現在のメジャーバージョンは3。 Maven 1 と 2 は互換性が無いが、2 と 3 は互換性が保たれている。 環境 >mvn --version Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) Maven h

    Mavenの基本勉強メモ - Qiita
  • Javaはカレントディレクトリを使わない

    Java 11 から user.dir システムプロパティを実行時に変更することができなくなりました。この変更によって、 相対パスを解決する開始点を実行時に変更している一部のアプリケーションが影響を受けます。 user.dir システムプロパティとカレントディレクトリの関係について説明します。 相対パスはカレントディレクトリを開始点として解決される?Windows であれ Linux であれ、 実行プロセスはそれぞれがカレントディレクトリ (作業ディレクトリ) を持っています。そして、 多くのプログラミング言語は、 相対パスを解決するための開始点としてプロセスのカレントディレクトリ (作業ディレクトリ) を使用します。OS 自体がカレントディレクトリを開始点として相対パスを解決するシステムコールを提供しているのでこれは合理的です。 たとえば、 Linux には open 関数というシステム

    Javaはカレントディレクトリを使わない
  • 1