Kann ich eine Javascript-Datei schreiben, die optional require.js verwendet, um Abhängigkeiten anzugeben, wenn diese verfügbar sind?

Ich muss ein Javascript-Plugin schreiben, das sowohl als AMD-Modul als auch als Nicht-AMD-Javascript-Datei (synchron geladen) verwendet werden kann.

Es ist abhängig von den Bibliotheken "Jockey.js" und "jquery".

Mit anderen Worten, ich möchte die Datei so strukturieren, dass sie nicht versagt, wenn sie in einer herkömmlichen nicht asynchronen HTML-Struktur verwendet wird (geladen über ein Skript-Tag, nachdem ihre Abhängigkeiten über Skript-Tags geladen wurden) Es wird auch in der Lage sein, als AMD-Modul ohne Shim zu arbeiten und seine Abhängigkeiten anzugeben. Kann das gemacht werden, oder ist Shim der einzige Weg, dies zu tun?