2013-02-11 10 views
15

मैं जिस मॉड्यूल का उपयोग कर रहा हूं उसे जावा 1.7 के साथ संकलित किया जाना चाहिए, और मेरे पास केवल 1.6 है।"असमर्थित major.minor संस्करण" को रोकने के लिए मैं Play Framework 2.0 के लिए javac संकलन संस्करण कैसे सेट कर सकता हूं?

यदि मैं मॉड्यूल को 1.6 जैसे विशिष्ट संस्करण के लिए संकलित करना चाहता हूं, तो मैं इसे Play में कैसे सेट कर सकता हूं! फ्रेमवर्क 2.0 ताकि मैं "असमर्थित major.minor संस्करण" त्रुटियों को रोक सकूं।

Play में! 1.x आप application.conf में "java.version = 1.6" सेट कर सकते हैं।

मुझे लगता है कि Play में! 2.x इसे शायद एसबीटी के लिए कहीं भी सेट करने की जरूरत है - लेकिन कहां/कैसे?

उत्तर

0

मुझे लगता है कि एकमात्र समाधान परियोजना के रूट में build.sbt फ़ाइल बना सकते हैं और

javaHome जोड़ने के लिए है: = कुछ (फाइल "(path_to_your_jdk"))

+0

मैं सिर्फ एंटी जावा लक्ष्य = "1.5" – poornerd

+0

में संस्करण सेट करना चाहता हूं, मुझे लगता है कि – MaFo

8

फ़ाइल परियोजना/Build.scala, यदि आप जावा 1.6 के साथ संकलित करने के लिए चाहते हैं नीचे सेटिंग को जोड़ने में:

val main = play.Project(appName, appVersion, appDependencies).settings(
    // Force compilation in java 1.6 
    javacOptions in Compile ++= Seq("-source", "1.6", "-target", "1.6") 
) 
+0

संभावना नहीं है, धन्यवाद, धन्यवाद! – poornerd

+0

और यहां यह मेरे [ब्लॉग] पर खोजने के लिए है (http://www.poornerd.com/2013/07/25/how-to-set-the-java-version-for-compiling-a-play- फ्रेमवर्क-मॉड्यूल /) – poornerd

1

मैं इस पता लगा, अपने build.sbt फ़ाइल के अंत में

javaHome := Some(file("path_to_your_jdk")) 

डाल दिया। सुनिश्चित करें कि इसे "playJavaSettings" के बाद डालें "(यदि आपके पास यह build.sbt में है)।

सुनिश्चित करें कि आप सही रास्ते अपने SDK करने के लिए आवंटित किया है, आप टाइप कर इसकी पुष्टि कर सकते हैं:

java-home 
प्ले या उत्प्रेरक कंसोल में

इसके अलावा, आप अपने कंसोल में

clean 

चलाने सब पहले से संकलित संसाधनों से छुटकारा पाने के लिए सुनिश्चित करें।

अब

compile 

का उपयोग कर आप जाने के लिए अच्छा होना चाहिए अपने कोड संकलन। आशा है कि ये आपकी मदद करेगा!

17

जोड़ना

javacOptions ++= Seq("-source", "1.6", "-target", "1.6") 
build.sbt फाइल करने के लिए

मेरे लिए काम किया (पारदर्शी होने के लिए, मेरे मामले में यह JDK 8 के साथ निर्माण करने के लिए 1.7) था।

+0

मुझे लगता है कि 1.7 का अर्थ है जेडीके 7 के साथ बिल्डिंग, और 1.8 जेडीके 8 के साथ। क्या मैं गलत हूं? – behzad

संबंधित मुद्दे