問題タブ [scalac]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
4127 参照

java - jar から scala ソース コードを抽出する

そのため、ソース コードとして scala を含む jar ファイルがあり、元のコードを失いました。jar 内のクラス ファイルを、コンパイラが作成する Java クラスではなく、scala 関数およびクラスに変換する方法はありますか?

逆コンパイラを使用してみましたが、まったく意味のないJavaコードしか得られません。

前もって感謝します!

0 投票する
0 に答える
73 参照

scala - 複合型の値でのパターン マッチング - コンパイラのバグですか?

コンパイラのバグである可能性があると思われる、複合型で値をパターン一致させようとしたときに、(少なくとも私にとっては) ちょっと不思議なコンパイラの動作に出くわしました。ただし、バグ レポートを提出する前に、私よりも知識のある人がこれを見て、何が起こっているのかについて少し説明してくれるとうれしいです。

トレイトとケース クラスの小さな階層から始めます。

そして、複合型の値を操作したい:A with B

まず、ケース クラス エクストラクタを使用してパターン マッチを試みました。

上記は、型の不一致によりコンパイルに失敗します。

次に、extractor の使用をインスタンス タイプのマッチングに置き換えました。

上記はコンパイルし実際に機能し、「a1」と「a2」を画面に出力しますが、到達できないコードに関する誤った警告を発します。

驚くべきことに、make Anotsealedは警告を取り除きます (ただし、最初のパターン マッチはまだコンパイルされません)。

それで、ここに質問があります:

  1. 最初のパターン マッチはコンパイルする必要がありますか? そうでない場合、正確にはなぜですか?
  2. 2 番目のパターン マッチに対して出力された警告は単純に間違っているのでしょうか、それとも運が良かっただけで、このマッチが間違った分岐を取る可能性ある場合がありますか?
  3. バグ レポートを提出する必要がありますか、それとも以前から知られていた問題で、見逃していたのでしょうか?

2.11.7とでテストしました2.11.8

0 投票する
5 に答える
2722 参照

scala - -プレイルートファイルでのYwarn-unused-importトリガー

-Xfatal-warningsとを使用できるようにしたいのです-Ywarn-unused-importが、問題は、アプリケーションの再生ルートを含むファイルでコンパイラがエラーをトリガーしていることです。

他のルートも同様です。

scalac にファイルを無視するように指示することは可能でしょうか?

Scalaのバージョンは2.11.8.

0 投票する
1 に答える
62 参照

scala - Scalac インポート言語エラー

AtomicScalaの例をコンパイルしようとしています。

scalac AtomicTest.scala

エラーが発生します:

私は完全な初心者なので、どんな助けも大歓迎です。PS Scala コンパイラ バージョン 2.9.2

0 投票する
1 に答える
3849 参照

scala - scalac -Xlint の正しい使い方

scalax -Xlint のヘルプには、次の情報が記載されています。

すべてのチェックを有効にする方法はありますか? のセマンティックはscalac -Xlint何ですか? それはすべてを有効にしますか?デフォルトのセット (どれ) ? 何もしませんか?

注: Scala 2.11.8 および sbt 0.13.9

新しいバージョンが異なる動作/機能を提供する場合は、それらを更新することは問題ではないので、私に知らせてください

0 投票する
1 に答える
501 参照

scala - Play フレームワーク ルート ファイルのコンパイルに関する警告: メソッド at のローカル val は使用されません

私のプレイアプリには、パブリックファイルのルートを含むルートファイルがあります。最近、-Ywarn-unusedコンパイラ フラグを追加しましたが、予期しない警告が表示されます。

手順:

  1. activator new testingScalac(テンプレートリストから play-scala を選択)
  2. build.sbtフラグに追加scalacOptions ++= Seq("-Ywarn-unused")
  3. ルート ファイルに追加します。

GET /favicon.ico controllers.Assets.at(path="/public",file="/images/favicon.ico")

GET /favicon.png controllers.Assets.at(path="/public",file="/images/favicon.png")

GET /robots.txt controllers.Assets.at(path="/public",file="robots.txt")

ここで、実行すると次のようsbt compileに返されます。

ルートファイルで何か間違ったことをしていますか、それともプレイフレームワーク/コンパイラのバグですか (github を調べたところ、これに関連するものは見つかりませんでした)?

注: play 2.5.4 を使用していますが、play 2.4.x でも発生します

0 投票する
0 に答える
64 参照

multithreading - Scala with Java スレッド エラー: 不正なシンボリック参照

私はscalaが初めてで、それで遊ぼうとしています。テストを実行するために新しいスレッドを作成しました。コードを thread.join でコンパイルすると、コンパイル エラーが発生します。

thread.join なしでコードをコンパイルして実行する

ここに私のコードがあります:

私は何を間違っていますか?コードがきれいではないことはわかっていますが、それはscalaテストでの遊びにすぎません

0 投票する
2 に答える
4016 参照

scala - scala で Int から Double への暗黙的な変換が機能しない

i2d以下に示すように、いくつかの暗黙的なコードを作成しましたが、関数の暗黙的な会話が呼び出されないのはなぜでしょうか。

出力_scalac -Xprint:typer Test.scala

スペック

  • scalac のバージョンは 2.11.8 です。
0 投票する
1 に答える
631 参照

scala - IntelliJ IDEA で Scala コンパイラ プラグインをデバッグする

scalac用のコンパイラ プラグインを作成したいのですが、IntelliJ IDEA からコードを実行およびデバッグできないため、開発の初期段階で問題が発生します。

これらのチュートリアルを使用して、ダミー プラグインを実装します。

私の目標は、IDEA のデバッグ モードで何らかの形でプラグインを実行して、ブレークポイントに遭遇することです。

アップデート:

以下の回答は非常に役に立ちましたが、実際には、 JAVA_OPTS環境変数のデバッグ用の引数を追加し、リモート デバッガー接続オプションまでサスペンドしました。次に、 scalacを起動し、以下で説明するリモート デバッガーを実行しました。