redhat-developer / redhat-developer/vscode-java
Project 'myproject' is missing required Java project: 'somelib'
まだ誰も着手していません。
- 主要言語
- TypeScript
- スター
- 2.3k
- フォーク
- 546
- 平均マージ
- 20時間 1分
- マージ済み PR(30日)
- 11
説明
I am using the vsocde-java extension with a gradle java project.
Receiving error "Project 'java_server' is missing required Java project: 'chesslib'
- Operating System: Linux Mint 19.2
- JDK version: OpenJDK 1.8
Version: 1.40.2
Commit: f359dd69833dd8800b54d458f6d37ab7c78df520
Date: 2019-11-25T14:54:40.719Z
Electron: 6.1.5
Chrome: 76.0.3809.146
Node.js: 12.4.0
V8: 7.6.303.31-electron.0
OS: Linux x64 4.15.0-72-generic
My gradle configuration builds and runs fine, but the plugin complains still.
My build.gradle is as follows....
apply plugin: 'java'
// Use maven repository
repositories {
mavenCentral()
google()
}
dependencies {
implementation 'org.eclipse.jetty:jetty-servlet:9.4.19.v20190610'
implementation 'org.eclipse.jetty:jetty-client:9.4.19.v20190610'
implementation 'mysql:mysql-connector-java:8.0.16'
implementation 'org.apache.commons:commons-dbcp2:2.7.0'
implementation 'org.jdbi:jdbi3-core:3.10.1'
implementation 'com.google.firebase:firebase-admin:6.11.0'
compile 'com.google.apis:google-api-services-oauth2:v1-rev155-1.25.0'
// implementation 'com.google.gms:google-services:4.3.3'
compile project('chesslib')
runtime files('../../chesslib/build/libs/chesslib-1.1.12.jar')
}
task runServer(type: JavaExec) {
classpath = sourceSets.main.runtimeClasspath
main = 'ChessServer'
}
task runClient(type: JavaExec) {
classpath = sourceSets.main.runtimeClasspath
main = 'ChessClient'
standardInput = System.in // without this, using Scanner on System.in won't work
}
task runCLITestApp(type: JavaExec) {
classpath = sourceSets.main.runtimeClasspath
main = 'CLITestApp'
standardInput = System.in
}
My settings.gradle is as follows...
include ':chesslib'
project(':chesslib').projectDir = new File(settingsDir, '../../chesslib')
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
まず、外部 chesslib プロジェクトのパスを含め、提供された build.gradle と settings.gradle を使って報告内容を再現します。次に、extension が Gradle プロジェクトの依存関係をどのようにインポートし、compile project('chesslib'); をどのように処理するかを調査します。設定されたプロジェクトが missing-required-project エラーなしで解決されれば、issue は完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- java, vscode
- 領域
- build-system, tooling
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 35/100