मैं सेटअप करने के लिए एक @Configurable
डोमेन वस्तु (नहीं वसंत कंटेनर द्वारा प्रबंधित) कोशिश कर रहा हूँ।
मैं एक JVM तर्क के रूप में -javaagent:path/to/spring-instrument.jar
जोड़कर इस काम कर मिल गया है, लेकिन यह नहीं 100% मेरे लिए स्पष्ट है या नहीं, इस -javaagent जगह पर होना चाहिए। मैं बिलाव 8. मैं documentation की गलत व्याख्या की जा सकती है पर यह चल रहा हूँ, लेकिन यह मैं, यह पूरा करने के लिए एक एक और तंत्र का उपयोग करने के लिए विशेष इस पंक्ति में सक्षम हो सकता है लगता है:टॉमकैट 8, स्प्रिंग बूट, @ कॉन्फिगर करने योग्य लोडटाइम बिना -जवाज के बिना?
TomcatInstrumentableClassLoader
अबTomcat 8.0
पर परिभाषित नहीं है और अधिक है। इसके बजाय, वसंत स्वचालित रूप सेTomcatLoadTimeWeaver
रणनीति के माध्यम से बिलाव के नए देशीInstrumentableClassLoader
सुविधा का इस्तेमाल करते हैं।
कोड नीचे नमूने:
@SpringBootApplication
@EnableLoadTimeWeaving
public class TestApplication {
public static void main(String[] args) {
SpringApplication.run(TestApplication.class, args);
}
@Bean
public MyService myService(){
return new MyService();
}
}
@Configurable
public class MyDomainObject {
@Autowired
private MyService myService;
public MyService getMyService(){
return myService;
}
}
public class MyService {
private static final Logger log = LoggerFactory.getLogger(MyService.class);
public void test(){
log.info("test");
}
}
तो वहाँ एक तरह से इन @Configrable -javaagent निर्दिष्ट किए बिना बुना वस्तुओं को पाने के लिए है? मैं अगर मैं ऐसा कर सकते हैं जब एक स्टैंडअलोन बिलाव 8 सर्वर से युद्ध के रूप में तैनाती और/या जब एक 'फैट' जार के रूप में शुरू करने एम्बेडेड बिलाव 8 सर्वर का उपयोग कर के बारे में जानना चाहते हैं।
इसे अकेले बिलाव 8 सर्वर खड़े हो जाओ करने के लिए एक त्रुटि लेकिन अशक्त रिटर्न ऊपर getMyService()
विधि फेंक नहीं है की तैनाती खड़ा है। शुभारंभ के रूप में एक वसा जार स्टार्टअप के दौरान निम्न त्रुटि फेंकता है:
Caused by: java.lang.IllegalStateException: ClassLoader [sun.misc.Launcher$AppClassLoader] does NOT provide an 'addTransformer(ClassFileTransformer)' method. Specify a custom LoadTimeWeaver or start your Java virtual machine with Spring's agent: -javaagent:org.springframework.instrument.jar
मुझे लगता है असली सवाल यह है कि कैसे करना है मैं बिलाव 8 में Specify a custom LoadTimeWeaver
? प्रलेखन राज्यों के रूप में स्वचालित रूप से कुछ भी नहीं हो रहा है लेकिन फिर से मैं गलत तरीके से गलत व्याख्या कर सकता हूं जिसका अर्थ है।
मेरे पास अभी भी यही समस्या है, क्या आपने इसे हल किया है? दुर्भाग्य से मैंने – alexanoid
@alexanoid नहीं किया है – mjj1409