জ্যাভাহোহোমে ত্রুটি তৈরির সময়, ওএসএক্স-10.8.4 সংস্করণ


10
Error: JAVA_HOME is not defined correctly.
  We cannot execute
  /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/bin/java

আমি আমার ওএসএক্সকে 10.8.4 এ উন্নীত করেছি। ওএসএক্স আপগ্রেড হওয়ার পরে আমি আমার জেডিকে এবং জেআরই-কে উন্নীত করে to এ উন্নীত করেছি তবে প্রকল্পের মাভেন বিল্ডের জন্য চেষ্টা করার সময় আমি উপরের ত্রুটিটি পাচ্ছি।

আমি যখন দৌড়ান ls -al /System/Library/Frameworks/JavaVM.framework/Versions/

আমি নীচের প্রতিক্রিয়া পেতে

drwxr-xr-x  11 root  wheel  374 Jul 22 22:33 .
drwxr-xr-x  10 root  wheel  340 Jul 22 18:30 ..
lrwxr-xr-x   1 root  wheel   10 Jul 22 18:30 1.4 -> CurrentJDK
lrwxr-xr-x   1 root  wheel   10 Jul 22 18:30 1.4.2 -> CurrentJDK
lrwxr-xr-x   1 root  wheel   10 Jul 22 18:30 1.5 -> CurrentJDK
lrwxr-xr-x   1 root  wheel   10 Jul 22 18:30 1.5.0 -> CurrentJDK
lrwxr-xr-x   1 root  wheel   10 Jul 22 18:30 1.6 -> CurrentJDK
lrwxr-xr-x   1 root  wheel   10 Jul 22 18:30 1.6.0 -> CurrentJDK
drwxr-xr-x   7 root  wheel  238 Jul 22 18:30 A
lrwxr-xr-x   1 root  wheel    1 Jul 22 18:30 Current -> A
lrwxr-xr-x   1 root  wheel   59 Jul 22 18:30 CurrentJDK -> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents

এই জন্য ls -al /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/bin

কারেন্টজেডিকে আমি আর কোনও সামগ্রী দেখতে পাচ্ছি না।

চলমান /usr/libexec/java_home

আমি পাই:

/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home

আমি ওএস এক্স এর সাথে কাজ করতে বেশ নতুন। এটি সফল করতে কোনও পয়েন্ট আমি এখনও মিস করেছি কিনা তা আমাকে জানান।


আপনি চালাতে পারেন echo $JAVA_HOME, ls -al /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/binএবং ls -al /System/Library/Frameworks/JavaVM.framework/Versions/এবং প্রশ্নে ফলাফল যুক্ত করতে পারেন?
নোহিলসাইড

@patrix .bashrc -> export JAVA_HOME=/usr/libexec/java_home .profile -> export PATH=${JAVA_HOME}/bin:$PATH export CATALINA_HOME=/Library/Tomcat/Home .bashrc এবং .profile উপরে কমান্ড এটা উল্লেখ .. হয়েছে
arvind406

@ প্যাট্রিক্স .. আমি দেখতে পাচ্ছি যে জাভা পাথটি বাশার্ক ফাইল থেকে পুনরুদ্ধার করা হয়নি। আমি যখন জেভিএহোমকে টার্মিনাল থেকে পৃথকভাবে সেট করি তখনই আমি কোনও প্রকল্প তৈরি করতে পারতাম। কেন এমন হতে পারে? কোন ধারণা ?
arvind406

উত্তর:


9

অ্যাপল জ্যাভিএহোমকে “/ usr / lixec / java_home” এ সেট করার পরামর্শ দেয়।

আমার জন্য যা কাজ করেছিল তা এটিকে প্রায় $ () এ মোড়ানো ছিল। সুতরাং আমি নীচের কমান্ডগুলি সহ A (/ usr / lixec / java_home) এর মতো জাভাবাহোম কনফিগারেশন শেষ করেছি:

vim ~/.bash_profile 
export JAVA_HOME=$(/usr/libexec/java_home)
source ~/.bash_profile

এটি আমার পক্ষে নিখুঁতভাবে কাজ করেছিল!
রিজেজেস

2

/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/bin/java এটি উপস্থিত থাকলে অ্যাপল দ্বারা সরবরাহ করা জাভা যার সর্বশেষতম সংস্করণটি জেআরআই 1.6 হবে be

ওরাকল জেডিকে ব্যবহার করার জন্য (আপনি যে জাভা mention উল্লেখ করেছেন) আপনি যদি এটি পুরোপুরি ইনস্টল করে থাকেন তবে / usr / bin / java পাথটি ব্যবহার করুন। নোট করুন যে জেআরই কেবল জাভা অ্যাপলেটগুলির জন্য এবং তাই / usr / বিন / জাভা প্রভাবিত করে না

আরও তথ্যের জন্য দেখুন ওরাকল ইনস্টল ডকুমেন্টেশন

এবং সেখান থেকে নোট

জাভার ভিন্ন সংস্করণটি চালনার জন্য, পুরো পথটি নির্দিষ্ট করুন বা জাভা_হোম সরঞ্জামটি ব্যবহার করুন:

/usr/libexec/java_home -v 1.7.0_06 --exec javac -version

আরও তথ্যের জন্য জাভা_হোম (1) ম্যান পৃষ্ঠাটি দেখুন।


। প্রোফাইল -> রফতানি পাঠ্যপথ = $ A জাভাহোম} / বিন: $ পথ রফতানি ক্যাটালিনহোম = / গ্রন্থাগার / টমক্যাট / হোম
আর্কাইন্ড 406

@ অর্ভিন্ড এই মন্তব্যগুলির অর্থ কী?
ব্যবহারকারী 151019

@ arvind406 হ্যাঁ তবে এটি আমার উত্তরটি যুক্ত বা জিজ্ঞাসা করে?
ব্যবহারকারী 151019

পূর্ববর্তী মন্তব্যগুলি ভুল উইন্ডোতে মন্তব্য করা হয়েছিল। দুঃক্ষিত। ১০.৮ ওএসএক্স-তে আপগ্রেড করার পরে আমি জেডিকে এবং জেআরই-কে উন্নীত করেছি I আমি আবারও প্রশ্নটি আপডেট করেছি। দয়া করে একবার দেখুন এবং আমি কোথাও ভুল হচ্ছে কিনা তা আমাকে জানান me এই কমান্ডটি চালানোর সময় /usr/libexec/java_homeআমি পেয়েছি/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home
arvind406

@ মার্ক .. আমি দেখছি যে পথটি বাশার্ক ফাইল থেকে পুনরুদ্ধার করা হয়নি। আমি যখন জেভিএহোমকে টার্মিনাল থেকে পৃথকভাবে সেট করি তখনই আমি কোনও প্রকল্প তৈরি করতে পারতাম। কেন এমন হতে পারে? কোন ধারণা ?
arvind406

1

এই লিঙ্কটি অনুসরণ করুন: https://stackoverflow.com/a/44564303/5005676 আপনি যদি এমভিএন স্ক্রিপ্টটি দেখেন: কোডটি এখানে ব্যর্থ হয় ---

ডিবাগিং এবং ফিক্সিংয়ের জন্য পদক্ষেপগুলি:

পদক্ষেপ 1: এমভিএন স্ক্রিপ্টটি খুলুন / ব্যবহারকারীর / ব্যবহারকারী নাম / পেপা -ম্যাভান ৩.০.৫/bin/mvn (কম কমান্ডের মতো খুলুন: কম / ব্যবহারকারীর / ব্যবহারকারী নাম / পাসে- maven-3.0.5/bin/mvn)

পদক্ষেপ 2: স্ক্রিপ্টের নীচের কোডটি সন্ধান করুন:

  if [ -z "$JAVACMD" ] ; then
  if [ -n "$JAVA_HOME"  ] ; then
    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
      # IBM's JDK on AIX uses strange locations for the executables
      JAVACMD="$JAVA_HOME/jre/sh/java"
    else
      JAVACMD="$JAVA_HOME/bin/java"
    fi
  else
    JAVACMD="`which java`"
  fi
fi

if [ ! -x "$JAVACMD" ] ; then
  echo "Error: JAVA_HOME is not defined correctly."
  echo "  We cannot execute $JAVACMD"
  exit 1
fi

স্টিপি 3: এটি ঘটছে কারণ জাভ্যাকএমডি ভেরিয়েবল সেট করা হয়নি। সুতরাং এটি ত্রুটি প্রদর্শন করে।

দ্রষ্টব্য: এটি ঠিক করার জন্য

export JAVACMD=Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/jre/bin/java

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

কী: আপনি যদি এটি স্থায়ীভাবে emacs.profile করতে চান

কমান্ডগুলি পোস্ট করুন এবং Ctrl-x Ctrl-c টিপুন (সেভ-বাফারস-কিল-টার্মিনাল)।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.