Как действительно В спящем режиме, находят универсальный тип набора в отображении @OneToMany?

Вот чем я закончил - Ruby-версия сценария оболочки setenv:

  # Read application config                                                       
$hConf, $fConf = {}, File.expand_path("../config.rb", __FILE__)
$hConf = File.open($fConf) {|f| eval(f.read)} if File.exist? $fConf

  # Application classpath                                                         
$: << ($hConf[:appRoot] || File.expand_path("../bin/app", __FILE__))

  # Ruby libs                                                                     
$lib = ($hConf[:rubyLib] || File.expand_path("../bin/lib", __FILE__))
($: << [$lib]).flatten! # lib is string or array, standardize                     

Тогда мне просто нужно убедиться, что этот скрипт вызывается один раз, прежде чем что-то еще, и не нужно трогать отдельные исходные файлы.

Я поместил некоторые параметры в конфигурационный файл, например расположение внешних (не gem) библиотек:

# Site- and server specific config - location of DB, tmp files etc.
{
  :webRoot => "/srv/www/myapp/data",
  :rubyLib => "/somewhere/lib",
  :tmpDir => "/tmp/myapp"
}

Это хорошо работает для меня, и я могу повторно использовать сценарий setenv в нескольких проекты просто путем изменения параметров в файле конфигурации. Гораздо лучшая альтернатива, чем сценарии оболочки, IMO.

6
задан Mwanji Ezana 8 October 2009 в 20:14
поделиться

1 ответ

Но это возможно узнать с помощью API отражения. Взгляните на Field.getGenericType () :

Type type = field.getGenericType();
if (type instanceof ParameterizedType) {
  Type[] genericArguments = ((ParameterizedType) type).getActualTypeArguments();
}
7
ответ дан 17 December 2019 в 00:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: