मेरा जावा 7 प्रोजेक्ट ग्रैडल में ठीक से निर्माण कर रहा है, भले ही यह java.util.Optional
पर निर्भर करता है।जावा 1.7 में वैकल्पिक? स्रोत/लक्ष्य संगतता को अनदेखा करना?
मैं बहुत उलझन में हूं। java.util.Optional
जावा 8 में केवल एक चीज थी, है ना?
मेरे पास एक ग्रैडल प्रोजेक्ट है, और मैंने sourceCompatibility
और targetCompatibility
से 1.7
दोनों सेट किए हैं।
इस मॉड्यूल में एक वर्ग में मैं आयात java.util.Optional
, जो मैं सोचा जावा 8.
अगर मैं gradlew clean assemble
चलाने जब तक शामिल नहीं किया गया, संकलक भी सही विकल्प के साथ कहा जाता हो जाता है। एक चेतावनी है कि हालांकि थोड़ा सा फिश लगता है। हालांकि, जार बस ठीक हो गया है।
15:51:12.998 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter] Executing actions for task ':core:compileJava'.
15:51:13.000 [DEBUG] [org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler] Compiler arguments: -source 1.7 -target 1.7 -d /Users/deejay/workspace/number-jumble/core/build/classes/main -g -encoding UTF-8 -classpath /Users/deejay/workspace/number-jumble/model/build/libs/model-1.0.jar:/Users/deejay/.gradle/caches/modules-2/files-2.1/com.badlogicgames.gdx/gdx/1.3.1/18995f8b7b19118975722370818023c76a86fdf4/gdx-1.3.1.jar:/Users/deejay/.gradle/caches/modules-2/files-2.1/com.badlogicgames.gdx/gdx-freetype/1.3.1/1f647429753c8c91fb8fc477ffe5a4c9cde2f429/gdx-freetype-1.3.1.jar:/Users/deejay/.gradle/caches/modules-2/files-2.1/com.google.guava/guava/18.0/cce0823396aa693798f8882e64213b1772032b09/guava-18.0.jar /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/NumberJumbleGame.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/complexity/ChangeComplexityScreen.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/libgdx/SizeToAndLayoutAction.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/libgdx/TimeLabel.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/services/AppropriatelySizedFontService.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/services/DateService.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/session/GameSessionUi.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/session/HardcodedStreakAssessmentService.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/session/LandscapeGameSessionUi.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/session/PortraitGameSessionUi.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/session/RackScreen.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/session/RackSummaryScreen.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/session/StreakAssessmentService.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/splash/ReturnSplashScreen.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/stats/GdxLocalStatisticsRepository.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/stats/MapBackedStatisticsRepository.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/stats/StatisticsRepository.java /Users/deejay/workspace/number-jumble/core/src/main/java/com/binarytweed/numberjumble/stats/StatisticsService.java
15:51:13.001 [INFO] [org.gradle.api.internal.tasks.compile.jdk6.Jdk6JavaCompiler] Compiling with JDK Java compiler API.
15:51:13.007 [ERROR] [system.err] warning: [options] bootstrap class path not set in conjunction with -source 1.7
15:51:13.185 [ERROR] [system.err] 1 warning
क्या मैं पागल हो रहा हूं?
"[ERROR] [system.err] चेतावनी: [विकल्प] बूटस्ट्रैप क्लास पथ -सोर्स 1.7 के साथ संयोजन में सेट नहीं है" इसका मतलब है कि कंपाइलर जावा 7 सिंटैक्स को लागू करेगा लेकिन यह गारंटी नहीं दे सकता कि आप केवल कक्षाओं में उपलब्ध हैं जावा 7. –
धन्यवाद ओलेग - क्या वह "गारंटी दे सकता है" होने के लिए "गारंटी दे सकता है"? –
[ग्रैडल संकलन जावा कार्य चेतावनी: \ [विकल्प \] बूटस्ट्रैप क्लास पथ के संभावित डुप्लिकेट -सोर्स 1.6 के साथ संयोजन में सेट नहीं है] (http://stackoverflow.com/questions/16679593/gradle-compilejava-task-warning- विकल्प- बूटस्ट्रैप-क्लास-पथ-सेट-इन-कॉन्जू), [चेतावनी: [विकल्प] बूटस्ट्रैप क्लास पथ -सोर्स 1.5 के साथ संयोजन में सेट नहीं है] (https://stackoverflow.com/questions/7816423/warning- विकल्प -बूटस्ट्रैप-क्लास-पथ-नहीं-सेट-इन-संयोजन-स्रोत-1-5? rq = 1) –