Ho un'applicazione che dice x che usa un'altra libreria Java (ad esempio Y) come un file JAR. Quindi, in pratica, è necessario scaricare un file e caricarlo in memoria prima che uno qualsiasi dei suoi metodi venga richiamato in fase di esecuzione da X. Come posso assicurarmi che i file vengano scaricati e caricati prima che venga chiamato uno qualsiasi dei metodi di y? Inoltre, Y viene utilizzato in app multiple.
Dovrei usare lo schema akka qui?
y è un framework Java utilizzato per rilevare il tipo useragent. y userà un file per rilevare gli oggetti useragent che devono essere scaricati da s3 e aggiornati periodicamente e solo allora questa libreria / framework dovrebbe essere usata per rilevare il tipo di useragent da X.
Ad esempio:
X è qualcosa di simile a:
import com.data.Extract
public class X {
public static void main(String[] args) {
System.out.println(Extract.getUserAgentInfo(args[0]));
}
}
pom.xml di X (include la dipendenza di Y):
<dependency>
<groupId>group-y</groupId>
<artifactId>extract-data</artifactId>
<version>3.8.1</version>
<scope>runtime</scope>
</dependency>
Ora prima che X invii getuseragentinfo, Y dovrebbe aver già caricato i file nella memoria per ottenere i dati.
Mi chiedo se posso utilizzare WatchService o Threading qui per eseguire un thread separato per scaricare il file e caricarlo in memoria prima che venga utilizzato questo jar .i.e. dall'interno del vaso.
Si prega di avvisare.