Có thể cho một chương trình được viết bằng Java để biên dịch một tệp bằng trình biên dịch JDK (ngoài việc sử dụng Java để mở dấu nhắc lệnh và ném lệnh "javac" vào nó để biên dịch tập tin)?Biên dịch một tệp Java ... bằng một chương trình Java
6
A
Trả lời
12
Trong Java 6 trở đi có một API để sử dụng trình biên dịch. Đây có thể là những gì bạn đang tìm kiếm.
http://www.javabeat.net/2007/04/the-java-6-0-compiler-api/
http://docs.oracle.com/javase/6/docs/api/javax/tools/JavaCompiler.html
Lưu ý rằng bạn cần một JDK có trình biên dịch sẵn. JRE sẽ không đủ. Nếu đó là một vấn đề, hãy xem xét việc nhúng trình biên dịch Java Eclipse vào ứng dụng của bạn.
3
Thư viện kỹ thuật mã byte của Apache là bạn của bạn.
10
Java 6 có một API Compiler Kiểm tra Java Compiler Lớp Javadoc
http://docs.oracle.com/javase/6/docs/api/javax/tools/JavaCompiler.html
và một ví dụ
Các vấn đề liên quan
- 1. biên dịch chương trình java
- 2. Phát triển một chương trình java để biên dịch các tệp .java
- 3. Chạy chương trình java từ một chương trình java khác
- 4. Java - Cách biên dịch một tệp với Java Eclipse
- 5. làm thế nào để biên dịch và chạy chương trình java trong một chương trình java khác?
- 6. Lập trình biên dịch java bằng JavaCompiler?
- 7. Biên dịch các tệp .java bên ngoài từ trong Java
- 8. Thực thi tệp .jar từ một chương trình Java
- 9. Cắm vào trình biên dịch Java
- 10. Làm thế nào để vá một chương trình Java?
- 11. Trình biên dịch Java sang JavaScript
- 12. Trình biên dịch Java AOT miễn phí
- 13. Lỗi trình biên dịch Java Generics
- 14. Java - nhận đường dẫn "tệp chương trình"
- 15. .NET, Java tới trình biên dịch JavaScript
- 16. Biên dịch bốn tệp java trong một gói bằng cách sử dụng javac
- 17. Chương trình điều khiển Java
- 18. Trình biên dịch Prolog/Trình biên dịch được nhúng cho Java
- 19. Làm thế nào tôi có thể biên dịch một chương trình Java trong Eclipse mà không cần chạy nó?
- 20. Trình biên dịch Java tại thời gian chạy
- 21. Java API để tìm phiên bản JDK một tệp lớp được biên dịch?
- 22. Chương trình/trình biên dịch/thông dịch viên thực sự hoạt động như thế nào?
- 23. biên dịch C++ thành chương trình "thực"
- 24. Biên dịch Java 7 sang Java 6
- 25. Lỗi khi biên dịch chương trình java với maven trên windows
- 26. Trình biên dịch/trình biên dịch/trình biên dịch C++
- 27. Java 1.3.1, lỗi biên dịch
- 28. Chương trình GUI Java - Chương trình sơn
- 29. Cùng một mã chương trình với cùng một trình biên dịch dẫn đến các tệp nhị phân khác nhau
- 30. Biên dịch sang bytecode java (không sử dụng Java)
Mã tại http://www.javabeat.net/2007/04/the-java-6-0-compiler-api/ ném cho tôi một 'NullPointerException': o – Bluefire
Và bạn sử dụng một " java.exe "tìm thấy trong một JDK? –