Пересматривание этого вопроса несколько лет спустя, UglifyJS, кажется, наилучший вариант на данный момент.
, Как указано ниже, это работает на платформе NodeJS, но может быть легко изменено для работы любого механизма JavaScript.
---Старый ответ ниже---
Google выпустил Компилятор Закрытия , который, кажется, генерирует самые маленькие файлы, насколько замечено здесь и здесь
До этого, различные варианты были следующим образом
В основном , Packer делает лучшее задание при начальном сжатии, но если Вы идете в gzip файлы прежде, чем отправить на проводе (который необходимо делать) , Компрессор YUI получает самый маленький заключительный размер.
тесты были сделаны на btw кода jQuery.
упоминания daniel james в комментарии compressorrater , который показывает Packer, ведущему диаграмму в лучшем сжатии, таким образом, я предполагаю ymmv
После аутентификации мне нужно отправить почту
Приведенный ниже пример отлично работает с серверами Exchange:
Properties properties = new Properties();
properties.put("mail.transport.protocol", "smtp");
properties.put("mail.smtp.host", "mail.example.com");
properties.put("mail.smtp.port", "2525");
properties.put("mail.smtp.auth", "true");
final String username = "username";
final String password = "password";
Authenticator authenticator = new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
};
Transport transport = null;
try {
Session session = Session.getDefaultInstance(properties, authenticator);
MimeMessage mimeMessage = createMimeMessage(session, mimeMessageData);
transport = session.getTransport();
transport.connect(username, password);
transport.sendMessage(mimeMessage, mimeMessage.getAllRecipients());
} finally {
if (transport != null) try { transport.close(); } catch (MessagingException logOrIgnore) {}
}
Подходит для меня:
Properties props = System.getProperties();
// Session configuration is done using properties. In this case, the IMAP port. All the rest are using defaults
props.setProperty("mail.imap.port", "993");
// creating the session to the mail server
Session session = Session.getInstance(props, null);
// Store is JavaMails name for the entity holding the mails
Store store = session.getStore("imaps");
// accessing the mail server using the domain user and password
store.connect(host, user, password);
// retrieving the inbox folder
Folder inbox = store.getFolder("INBOX");
Этот код основан на примере кода, полученном при загрузке почты Java.
Exchange не запускает SMTP службу по умолчанию, поэтому мы не можем использовать SMTP протокол
для подключения к серверу Exchange и попытки отправки электронной почты. BalusC может нормально работать с приведенным выше кодом, потому что администратор вашего почтового сервера включил службу SMTP на Exchange. В большинстве случаев SMTP отключен. Я также ищу решение.
Это - лучший ответ из того, что я нашел, но разочаровывает то, что вам придется заплатить за него через 60 дней.