-->

Translating using Google Translate API

2020-02-15 07:03发布

问题:

I want to use the following code as the basis for a program that translates user input to English. I am getting the error "cannot find symbol - GoogleApi." Can someone please help me figure out what to do?

import com.google.api.translate.Language;
import com.google.api.translate.Translate;

public class Main {
    public static void main(String[] args) throws Exception {
        // Set the HTTP referrer to your website address.
        GoogleAPI.setHttpReferrer(/* Enter the URL of your site here */);

        // Set the Google Translate API key
        // See: http://code.google.com/apis/language/translate/v2/getting_started.html
        GoogleAPI.setKey(/* Enter your API key here */);

        String translatedText = Translate.DEFAULT.execute("Bonjour le monde", Language.FRENCH, Language.ENGLISH);

        System.out.println(translatedText);
    }
}

回答1:

what is exactly GoogleApi? You have not declared that, in order to use it .. I did not understand the program fully, I suggest that you search the website or through google for a program to do that task, there are plenty.



回答2:

A working code can be found here. It also has link to full codebase on github.

Things to keep in mind:

  1. If you are behind proxy you need make jvm aware of this. One way of doing it is through a static initializer as below:

    static { System.setProperty("http.proxyHost", HTTP_PROXY_HOST); System.setProperty("http.proxyPort", HTTP_PROXY_PORT); System.setProperty("https.proxyHost", HTTPS_PROXY_HOST); System.setProperty("https.proxyPort", HTTPS_PROXY_PORT); }

  2. In Run configuration make your GOOGLE_API_KEY available by making it environment variable as below:

For setting up of API key Check section titled "Setting up an API Key".