שתי הפקודות האלה לא נותנות למשגר של Java את אותה תצורה. השתמשו במארח ובפורט של ה-proxy מסוג HTTP שלכם; רשימת ה-proxy מסוג 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 הופכים לארגומנטים של היישום. אלא אם היישום מנתח אותם בכוונה, הם אינם מגדירים את מאפייני ה-proxy של ה-JVM.

אותו גבול חל כאשר מציינים מחלקה ראשית במקום להשתמש ב-‎-jar. הציבו את אפשרויות ה-JVM לפני שם המחלקה ואת הארגומנטים הייחודיים ליישום אחריו.

בדקו את פקודת ההפעלה האמיתית שנוצרת על ידי IDE, עטיפת שירות או סקריפט הפעלה. ייתכן שהשדה שכותרתו “program arguments” יהיה שונה מהשדה של אפשרויות ה-VM.

מיקום נכון מספק רק את המאפיין. לקוח ה-HTTP עדיין צריך לצרוך את תצורת הרשת הזו של Java. עבור Apache HttpClient 5, אפשרו ללקוח להשתמש במאפייני מערכת. אימות proxy זקוק לממשק נתמך משלו.

מאמרים קשורים