We present a numerical method to solve the equations of general relativistic hydrodynamics in a given external gravitational field. The method is based on a generalization of Roe's approximate Riemann solver for the non relativistic Euler equations in Cartesian coordinates. The new method is applied to a set of standard test problems for general relativistic hydrodynamics, and is shown to perform well in comparison to existing numerical schemes. In contrast to existing explicit methods the present method can cope with strong relativistic shocks. By-products are: the characteristic form of the general relativistic Euler equations, a numerical method for special relativity that can deal with strong discontinuities, a numerical scheme for the integration of the Euler equations in an arbitrary coordinate system, possibly under the influence of (external) gravity, and a novel method to incorporate source terms in numerical schemes.