ജാവയുടെ പ്രോക്സി ഫ്ലാഗുകൾ പ്രധാന ക്ലാസിന് മുമ്പ് വയ്ക്കുക
പ്രോക്സി സിസ്റ്റം പ്രോപ്പർട്ടികൾ ജാവ ലോഞ്ചറിന് നൽകുക, അവ ആകസ്മികമായി ആപ്ലിക്കേഷൻ ആർഗ്യുമെന്റുകളായി എത്തിക്കുന്നതിന് പകരം.
ഈ രണ്ട് കമാന്റുകളും ജാവ ലോഞ്ചറിന് ഒരേ കോൺഫിഗറേഷൻ നൽകുന്നില്ല. നിങ്ങളുടെ HTTP പ്രോക്സിയുടെ ഹോസ്റ്റും പോർട്ടും ഉപയോഗിക്കുക; HTTP പ്രോക്സി പട്ടിക അനുവദനീയമായ പൊതു റൂട്ടുകൾക്ക് സ്ഥാനാർത്ഥികൾ നൽകുന്നു:
java -Dhttp.proxyHost=proxy.example.net -Dhttp.proxyPort=8080 -jar app.jar
java -jar app.jar -Dhttp.proxyHost=proxy.example.net -Dhttp.proxyPort=8080
ആദ്യത്തേതിൽ ലോഞ്ചർ സിസ്റ്റം-പ്രോപ്പർട്ടി ഓപ്ഷനുകൾ സ്വീകരിക്കുന്നു. രണ്ടാമത്തേതിൽ app.jar-ന് ശേഷമുള്ള ടോക്കണുകൾ ആപ്ലിക്കേഷൻ ആർഗ്യുമെന്റുകളാകുന്നു. ആപ്ലിക്കേഷൻ അവ ബോധപൂർവ്വം പാഴ്സ് ചെയ്യുന്നില്ലെങ്കിൽ, അവ JVM-ന്റെ പ്രോക്സി പ്രോപ്പർട്ടികൾ സജ്ജമാക്കുന്നില്ല.
-jar-ന് പകരം പ്രധാന ക്ലാസ് നാമനിർദ്ദേശം ചെയ്യുമ്പോഴും ഇതേ അതിർത്തി ബാധകമാണ്. JVM ഓപ്ഷനുകൾ ക്ലാസ് നാമത്തിന് മുമ്പും ആപ്ലിക്കേഷൻ-നിർദ്ദിഷ്ട ആർഗ്യുമെന്റുകൾ അതിന് ശേഷവും വയ്ക്കുക.
ഒരു IDE, സേവന റാപ്പർ അല്ലെങ്കിൽ ലോഞ്ച് സ്ക്രിപ്റ്റ് സൃഷ്ടിക്കുന്ന യഥാർത്ഥ സ്റ്റാർട്ടപ്പ് കമാന്റ് പരിശോധിക്കുക. “program arguments” എന്ന ലേബലുള്ള ഫീൽഡ് VM ഓപ്ഷനുകളുടെ ഫീൽഡിൽ നിന്ന് വ്യത്യസ്തമായിരിക്കാം.
ശരിയായ സ്ഥാനം പ്രോപ്പർട്ടി മാത്രം നൽകുന്നു. HTTP ക്ലയന്റ് ഇപ്പോഴും ആ ജാവ നെറ്റ്വർക്കിംഗ് കോൺഫിഗറേഷൻ ഉപയോഗിക്കണം. Apache HttpClient 5-നായി, ക്ലയന്റിന് സിസ്റ്റം പ്രോപ്പർട്ടികൾ ഉപയോഗിക്കാൻ അനുവദിക്കുക. പ്രോക്സി ഓതന്റിക്കേഷന് അതിന്റേതായ പിന്തുണയുള്ള ഇന്റർഫേസ് ആവശ്യമാണ്.