Jak przekazać właściwości systemu -D podczas testowania na Eclipse?


95

Piszę na Eclipse na Windows, a Code zostaje wdrożony na Unixie. Pobieram wartości właściwości systemowych za pomocą System.getProperty („klucz”) ... Jak przekazać to w Eclipse, aby nie musieć modyfikować kodu i działa na Eclipse do debugowania?

Jakieś sugestie?

Odpowiedzi:


135

Uruchom -> Uruchom konfiguracje, wybierz projekt, druga zakładka: „Argumenty”. Górne pole jest przeznaczone dla twojego programu, dolne jest dla argumentów VM, np -Dkey=value.


1
gdzie to jest, jeśli próbujesz uruchomić aplikację na Androida?
user678392

dlaczego muszę używać „D” jako prefiksu?
Manticore

28
Jeśli jesteś tak gruby jak ja - argumenty -D znajdują się w dolnym polu dla argumentów VM , a nie w górnym polu dla argumentów twojego programu. / westchnienie
ruffin

2
Górne pole jest przeznaczone na String[] argsprzekazanie do mainmetody.
jaco0646

7
Czy istnieje sposób, aby ustawić to domyślnie, aby nie trzeba było ręcznie wprowadzać tego wielokrotnie w przypadku wielu testów?
Stewart

44

Możesz użyć javy System.properties, do używania ich z eclipse możesz:

  1. Dodaj -Dlabel="label_value"argumenty VM testu w Run Configurationnastępujący sposób:

eclipse_vm_config

  1. Następnie uruchom test:

    import org.junit.Test;
    import static org.junit.Assert.assertEquals;
    
    public class Main {
        @Test
        public void test(){
            System.out.println(System.getProperty("label"));
            assertEquals("label_value", System.getProperty("label"));
        }
    }
    
  2. Na koniec powinien przejść test i wyprowadzić to w konsoli:

    label_value
    

13

Możesz dodać argumenty wiersza poleceń do konfiguracji uruchamiania. Po prostu edytuj konfigurację uruchamiania i dodaj -Dmyprop = wartość (lub cokolwiek) do pola argumentów maszyny wirtualnej.


4
Jeśli miałeś na myśli „Pole argumentów programu”, gdy powiedziałeś „pole argumentów wiersza poleceń” w zakładce Argumenty - nie działa! Musi zostać wpisane w "VM Arguments Box", jak wspomniał Bombe powyżej.
Devang Kamdar

4

uruchom konfigurację -> argumenty -> argumenty maszyny wirtualnej

(można również umieścić w konfiguracji debugowania w obszarze Konfiguracja debugowania-> Argumenty-> Argumenty maszyny wirtualnej)



0

Tak, to jest sposób:

Kliknij prawym przyciskiem myszy program, wybierz uruchom -> uruchom konfigurację, a następnie argument vm

-Denv=EnvironmentName -Dcucumber.options="--tags @ifThereisAnyTag"

Następnie możesz złożyć wniosek i zamknąć.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.