নেটিভ ত্রুটির প্রতিক্রিয়া জানান: "'9.0.1' থেকে জাভা সংস্করণ নির্ধারণ করা যায়নি” "


108

আমি ম্যাকোস-এ কাজ করছি এবং শুরু করছি react-native

শুরু করার প্রথম ধাপগুলির মধ্যে একটি হল চালানো: react-native run-androidবা react-native run-ios। তবে আমি এই ত্রুটিটি পাচ্ছি:

react-native run-android

ফলাফল:

Scanning folders for symlinks in /Users/ric/myprojs/albums/node_modules (6ms)
Starting JS server...
Building and installing the app on the device (cd android && ./gradlew installDebug)...

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine java version from '9.0.1'.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
Could not install the app on the device, read the error above for details.
Make sure you have an Android emulator running or a device connected and have
set up your Android development environment:
https://facebook.github.io/react-native/docs/android-setup.html

আমি দৌড়ানোর সময় এটিই পাই java --version:

java --version

ফলাফল:

java 9.0.1
Java(TM) SE Runtime Environment (build 9.0.1+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)
mbp:albums ric$ java --version
java 9.0.1
Java(TM) SE Runtime Environment (build 9.0.1+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)

সম্পাদন করা

আমার জাভাক সংস্করণ:

javac --version

ফলাফল:

javac 9.0.1

এটি ঠিক করার জন্য কোনও ধারণা?


2
আপনি কি javac -versionটার্মিনালে খুব চালাতে পারেন দয়া করে
bennygenel

1
আমি এই সমস্যাটি দেখতে পেয়েছি এটি কিছুটা পুরানো তবে এটি জাভা সংস্করণ বা গ্রেডের সাথে সম্পর্কিত হতে পারে।
bennygenel

উত্তর:


205

আপনার PROJECT_PATH/android/gradle/wrapper/gradle-wrapper.propertiesফাইলে,distributionUrl নিম্নলিখিতগুলিতে আপডেট করুন :

distributionUrl=https\://services.gradle.org/distributions/gradle-5.0-all.zip

সম্পর্কিত গ্রেড বিতরণ ডকুমেন্টেশন দেখুন


4
থাকা উচিত অ্যাপ্লিকেশান-ফোল্ডারের / অ্যান্ড্রয়েড / gradle / মোড়কের / gradle-wrapper.properties
মুহাম্মদ Adeel

6
আমি আপনার পরামর্শে গ্রেড সংস্করণ পরিবর্তন করার পরে এটি আমাকে আরও একটি ত্রুটি দেয়: com.android.sdklib.repository.AndroidSdkHandler
leMale

7
কেন এই সাহায্য করে? প্রতিক্রিয়া-নেটিভ যখন আপনি নতুন অ্যাপ্লিকেশন শুরু করেন তখন ডিফল্টরূপে গ্রেড-২.১14.১.১ ব্যবহার করে, তবে আমাদের আলাদা কেন প্রয়োজন?
ওয়াল্টারি

11
এই> জাভ্যাক্স / এক্সএমএল / বাইন্ড / এনোটেশন / এক্সএমএলশেমার যোগ করার পরে এই ত্রুটিটি পেয়েছে
মিলন

15
আপনার গ্রেডলের সর্বশেষতম সংস্করণ ব্যবহার করা দরকার। উদাহরণস্বরূপ, জাভা 11 সমর্থন করার জন্য, আপনি ব্যবহার করতে পারেনgradle-4.10-all.zip
আন্দ্রে কলপাকভ

24

সত্যই এই ত্রুটিটি ঘুরে দেখার দ্রুততম উপায় হল জেডিকে ৮ ব্যবহার করা Ex ব্যতীত যখন আপনাকে সত্যিকার অর্থে জেডিকে 9 ব্যবহার করা দরকার।

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

আপনার পরিবেশগত পরিবর্তনশীল JAVA_Home কে নতুন জেডিকে সংস্করণে পরিবর্তন করতে ভুলবেন না!


1
জাভা সংস্করণ স্যুইচ করার সম্পর্কিত লিঙ্কটি স্ট্যাকওভারফ্লো.com
অক্ষয় বিজয় জৈন

15

আপনি আছে তা নিশ্চিত করুন JDK8ইনস্টল এবং তারপর সেট JAVA_HOMEমধ্যেJDK8

উদাহরণ স্বরূপ:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home

অথবা .bash_*এই পরিবর্তনশীল সেট করতে ফাইলগুলি ব্যবহার করুন


1
আমি আমার .zshrc এ ম্যাক এ রেখেছিলাম: export JAVA_HOME=$(/usr/libexec/java_home) এটি export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)জাভা ভি 8 এর সর্বশেষ ইনস্টলড সংস্করণটি বেছে নিয়েছে এবং এটি একই সমস্যাটি স্থির করেছে।
গ্রেগ হাইগুড

8
vi ~/.bash_profile

তারপরে নিম্নলিখিত লাইনগুলি যুক্ত করুন:

export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)

বর্তমান শেলটিতে উপরের পরিবর্তনগুলি কার্যকর করার জন্য এখন ফাইলটি উত্স করুন:

source ~/.bash_profile 

1
এই শেষ লাইনটি export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)আমার জন্য সমস্যার সমাধান করেছে - ধন্যবাদ!
জনসালজারুলো

7

MacOS এ, আমি নিম্নলিখিত কমান্ডগুলি চালিত করেছি:

brew cask uninstall java
brew tap caskroom/versions
brew cask install java8 "or just brew cask install java to install latest version"

3

আমি এই ত্রুটিটি পাচ্ছিলাম, তবে জাভাটির আরও সাম্প্রতিক সংস্করণের জন্য - 10.0.2।

আমার ত্রুটি সমাধানের জন্য, আমি @Blacktovicheএই গিতুব ইস্যুতে উল্লিখিত পদক্ষেপগুলি অনুসরণ করেছি : https://github.com/facebook/react-native/issues/17688

যখন আমি androidঅ্যান্ড্রয়েড স্টুডিওর মাধ্যমে আমার প্রকল্পের ভিতরে ফোল্ডারটি খুলি, তখন আমাকে অনুরোধ জানানো হয়েছিল Android Gradle plugin update recommended। সেই সময় আমি কিছুটা পুরানো টিউটোরিয়াল অনুসরণ করছিলাম যা আমাকে ক্লিক করতে বলেছিল Don't remind me again for this project

তবে @Blacktovicheউপরে লিঙ্কযুক্ত গিথুব ইস্যুতে সুপারিশ অনুসারে গ্র্যাডল প্লাগইন আপডেট করার প্রয়োজন হয় update আপডেট করার পরে, আমাকেও ক্লিক করতে হয়েছিল Install Build Tools 27... and sync project(সঠিক সংস্করণটি আমার মনে নেই)।

আমি এই পদক্ষেপগুলি অনুসরণ করার পরে, আমি অ্যান্ড্রয়েড স্টুডিও এমুলেটরটিতে আমার প্রতিক্রিয়া নেটিভ অ্যাপ্লিকেশনটি সফলভাবে চালাতে সক্ষম হয়েছি।

আশা করি এটি কাউকে সাহায্য করবে!


1

---- ডিসেম্বর 2018 --- মনোযোগ দিন --- প্রতিক্রিয়া নেটিভ 8 এর চেয়ে বেশি জাভা সংস্করণগুলির সাথে কাজ করে না, তাই আপনার 9.0.1সংস্করণ আনইনস্টল করা দরকার । এটি করতে, নিম্নলিখিত কমান্ডগুলি কার্যকর করুন:

cd /Library/Java/JavaVirtualMachines/
ls -l

আপনার জাভা সংস্করণযুক্ত ফোল্ডারটি শনাক্ত করুন, তারপরে এটি সরান

sudo rm -rf jdk.x.x_xxx.jdk

এর পরে আপনি আবার ওরাকল থেকে জাভা 8 ডাউনলোড এবং ইনস্টল করতে পারেন। পড়ুন jdk8 ডাউনলোড পাতা


"প্রতিক্রিয়া নেটিভ 8 এর চেয়ে বেশি জাভা সংস্করণগুলির সাথে কাজ করে না" একেবারেই ভুল। আমার এখনই জেডিকে ১৩-এ চলছে build
ইয়ান কেম্প

আমার উত্তরটি ডিসি 2018 থেকে।
গিলহেরেম ফেরেরিরা

0

আপনি যদি উইন্ডোজ ব্যবহার করছেন; পরিবেশের পাথের ভেরিয়েবলটিতে আপনার জেডিকে পাথ যুক্ত করেছেন তা নিশ্চিত করুন। তারপরে আপনার প্রতিক্রিয়া নেটিভ প্রকল্প থেকে অ্যান্ড্রয়েড স্টুডিওতে আপনার অ্যান্ড্রয়েড ফোল্ডারটি খুলুন। এটি স্বয়ংক্রিয়ভাবে আপনার জন্য প্রয়োজনীয় জিনিস আপডেট করবে।


0

অ্যান্ড্রয়েড স্টুডিও ব্যবহার করে প্রকল্পটি তৈরি করতে ভুলে গেলে আমি সাধারণত এই ত্রুটিটি পাই। একটি সাধারণ সিঙ্ক এবং আপগ্রেডিং গ্রেডেল কাজটি করবে।


0

আমি আমার জেডিকে 8 তে ডাউনগ্রেড করে এটি সমাধান করি।


0

উবুন্টুতে, আপনাকে টার্মিনালে এই কমান্ড লাইনগুলি চালানো উচিত:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt install oracle-java8-installer
sudo apt install oracle-java8-set-default
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.