2013-07-21 16 views
5

Po wpisaniuMaven domyślne ustawienia regionalne nie samo locale OS

mvn --version 

w wierszu polecenia widzę:

Domyślne Ustawienia regionalne: pl

Jednak moim systemie Locale jest tr_TR

Kiedy uruchamiam program Java SE Project bez urządzenia i uruchamiam Locale.getDefault() tr_TR wraca dobrze. Ale kiedy uruchamiam projekt Maven, a następnie Locale.getDefault(), zwraca on en_US, którego nie lubię.

Jak mogę powiedzieć, że moim domyślnym locale jest TR?

Odpowiedz

9

Można użyć tego polecenia

set MAVEN_OPTS= -Duser.language=tr 

Zresztą najlepszym rozwiązaniem jest, aby umieścić te informacje w pliku POM i nigdy przez linię poleceń. W szczególności można mieć do czynienia z konfiguracją Maven-Surefire-Plugin

<plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-surefire-plugin</artifactId> 
     <version>2.9</version> 
     <configuration> 
      <systemPropertyVariables> 
       <user.language>tr</user.language> 
       <user.region>TR</user.region> 
      </systemPropertyVariables> 
     </configuration> 
    </plugin> 

Drugie pytanie: Kolejne pytanie, czy mogę, Używam aplikacji sieci web w moim lokum ale obsługuje powiedzmy german , angielski .. A twoje ustawienia regionalne to DE. Czy mogę uzyskać ustawienia regionalne systemu z żądania? A może preferowany język w przeglądarce?

Możesz pobrać te informacje z wniosku. Oto przykład w serwletu.

import java.io.*; 
import javax.servlet.*; 
import javax.servlet.http.*; 
import java.util.Locale; 

public class GetLocale extends HttpServlet{ 

    public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException, IOException 
    { 
     Locale locale = request.getLocale(); 
     String language = locale.getLanguage(); 
     String country = locale.getCountry(); 

     response.setContentType("text/html"); 
     PrintWriter out = response.getWriter(); 

     out.println(language + ":" + country); 
    } 
} 
+0

Ale co, jeśli rozmieszczę projekt na innym komputerze z innym ustawieniem regionalnym? Czy nie ma sposobu, aby powiedzieć Mavenowi, aby używał bezpośrednio OS Locale? –

+0

Muszę wykonać kilka wyszukiwań. Nigdy nie spotkałem się z tym problemem. – Oscerd

+0

Mam googleed, ale nie mogę znaleźć informacji. Myślę, że nie ma sposobu, aby powiedzieć Mavenowi, aby używał locale systemu operacyjnego bezpośrednio. – Oscerd

Powiązane problemy