मैं हाल ही में कुछ किसी भी त्रुटि के संकलन जब यह होना चाहिए (हमने सोचा) फेंकने के बिना हमारे तैनाती चक्र के माध्यम से यह कर रही कोड द्वारा डंक मार रहा था ...एक संस्करण नीचे संकलन - ग्रहण, Maven
प्रश्न मेंकोड जा रहा है का उपयोग करते हुए नई स्थैतिक विधि Integer.compare
जो जावा 1.7 के बाद से है।
सर्वर वातावरण जावा 1.6 पर चलाया जाता है। जबकि हमारे विकास वातावरण में जावा 1.7 स्थापित है।
हमारी धारणा यह थी कि परियोजना प्राथमिकताओं को जावाएसई-1.6 अनुपालन में सेट करना कम से कम हमें प्रश्न में कोड पर संकलन चेतावनी देगा, हालांकि ग्रहण में कोई चेतावनी या त्रुटि दिखाई नहीं दे रही है।
परियोजना> गुण> जावा संकलक> JDK के अनुपालन> निष्पादन वातावरण से जावा का निर्माण पथ
गौणतः कि करने के लिएपर अनुपालन प्रयोग करें 'JavaSE-1.6', हम अंतिम तैनाती संकलित करने के लिए Maven का उपयोग करें। पोम को 1.6 संकलक का अनुपालन करने के लिए स्पष्ट रूप से निर्देशित किया गया है:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<optimize>true</optimize>
</configuration>
</plugin>
हालांकि मैवेन बिल्ड समस्या कोड के साथ सफलतापूर्वक चलता है।
मैं मैवेन और ग्रहण दोनों को कैसे विफल कर सकता हूं जब कोड पहले जेवीएम में संकलित नहीं होने पर काम नहीं करेगा?
धन्यवाद, पॉल।
मुझे याद है कि मुझे पहले इसी तरह की स्थिति का सामना करना पड़ा है (लेकिन यह 1.5 बनाम 1.6 था) लेकिन उस समय यह आपके काम की अपेक्षा करता है। मुझे संदेह है कि जेडीके में कोई बग है जिसके कारण? –