Po umieszczeniu niektórych plików w /src/main/resources
zostaną one umieszczone na ścieżce CLASSPATH w docelowym artefakcie JAR. Oznacza to, że jeśli będziesz polegać na takim artefakcie, będziesz miał dostęp do wszystkich zasobów, tak jak masz dostęp do zajęć w nim.
<dependency>
<groupId>com.example.foo</groupId>
<artifactId>my-resources</artifactId>
<version>0.1</version>
</dependency>
Jeśli my-resources
artefakt zawiera pewne zasoby /src/main/resources
, można uzyskać do nich dostęp przy starcie jak można (lub jakakolwiek inna biblioteka) dostęp /src/main/resources
zawartość z tego samego artefaktu.
Należy zauważyć, że nie zadziała to w przypadku /src/test/resources
, ponieważ zasoby testowe są umieszczane tylko w trybie CLASSPATH podczas wykonywania bieżącego artefaktu w trybie surefire
.
Dzięki! Czy taka sama praca dla '/ src/test/resources', gdyby zakres zależności był' testowy'? –
@Deejay: nie. Nie można również importować klas z '/ src/test/java', nawet jeśli są importowane za pomocą zakresu' test'. –
Możesz po prostu umieścić zasoby w 'testowym' artitact 'src/main/resources'. – carlspring