设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13335|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 M3 z; `; u; |) b6 n; P5 U2 V( d' f& x+ D5 _) A
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* x) l. T6 |& X- T) T+ w
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." }/ }1 q+ j% Y6 L
swarm.SignatureNotFoundException
% F1 T8 L" y: r, F: g8 Y, y: @& Y, b$ j        at swarm.Selector.<init>(Selector.java:76); S- j7 [: r. U) m+ P
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" N$ F+ p$ j, H; M5 C$ i) q5 y( |        at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 t# g4 w8 p2 o0 v# u2 ?& `4 M! f
4 i5 Q& y9 \) c9 G7 ]
import swarm.objectbase.SwarmImpl;* r$ l7 p" U" n6 L1 w: ~
import swarm.objectbase.Swarm;) ]0 Z7 l$ y1 X( s. y3 @
import swarm.activity.ScheduleImpl;" k1 w0 d' O2 T% d' M
import swarm.activity.Activity;
# M+ G; ^; ], C! eimport swarm.activity.ActionGroupImpl;
' v3 Q+ A( I! u: M9 t; S! limport swarm.collections.ListImpl;
) ]9 i  F  M! z0 l% gimport swarm.defobj.Zone; - D1 w8 i' ]' Y4 t# n1 u1 E% Y
import swarm.Globals;, d$ |( F9 S2 H" U& e7 ?
import swarm.Selector;
1 o9 O" l9 r/ \  z! r6 pimport swarm.activity.ActionGroup;
2 Z7 u* l4 s# n. |class Agent {2 ~7 x6 R8 F( o$ W; e. C
        char id;
8 _% ?. {1 [( v; \  Q8 ?8 y
/ R5 S4 |. u! C2 w- a/ g! ~8 m4 D        Agent(char id) {
. x, D0 D- Z3 M& c0 ]' C                this.id = id;  V* s2 Z1 r- {+ A! i8 C7 N! x
        }
, o; P( X8 w" K8 l' @! b, i: Q6 I7 q1 S9 P; G) h9 x
        public void agentStep() {5 x! i6 s# U, |8 D/ h5 s) v7 @# Q* H
                System.out.println(id + ":" + Globals.env.getCurrentTime());, ^! O! y& l, g
        }
5 y/ h/ u+ x* {8 S4 U" ^}! ?- t9 E- v8 D& c& D

+ I* U0 k* v2 u) a1 @public class ActionGroupDemo extends SwarmImpl {3 v- w# O) k. j; D1 S
        ScheduleImpl schedule;* m; s4 J4 @! _+ {$ ?7 E& \
        ActionGroupImpl actionGroup;; {( L; G3 q' a# E- M8 r2 K' |2 Q
        ListImpl list;; |3 a& ^9 t- e* ^' l/ Z/ l
        char Id = 'a';4 ?8 m+ K0 W# x& p

  ^. a$ v4 _( E2 H/ l  f        ActionGroupDemo(Zone aZone) {7 L8 {$ {1 \5 L: B* C; b
                super(aZone);
$ f; o" ^5 {) j' R1 Z: T                list = new ListImpl(aZone);5 {/ {- U& U; O0 m) p0 K1 e
                swarmSetp();4 w1 n( [" x0 [1 }+ N# y+ b& Q
                actionGroup = new ActionGroupImpl(aZone);
. V1 s1 A4 y. t+ f* f                schedule = new ScheduleImpl(aZone);
' _$ g. }  r/ d8 [) @7 L- L                try {
8 |' S3 l+ G- H& h- m- D- _                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  B: k. m4 N( t5 ~( S* Q0 h$ W                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: w& J4 |; x7 f5 J! U                        4 }! U3 ]% }$ e/ _8 r9 ~
                        actionGroup.createActionForEach$message(list, agentSel);
3 M# R4 f1 A2 g7 ~; V                        actionGroup.createActionTo$message(this, swarmSel);; k& E& b! D  x: ?7 D* ?, m: J3 a
                        schedule.at$createAction(0, actionGroup);. L# u5 f4 G7 N3 ~3 b
                        schedule.at$createAction(1, actionGroup);0 Y7 s0 ^  u# h# }6 L
                        schedule.at$createAction(2, actionGroup);; F9 j) n5 {  G: P: ]

9 [( a3 m; s% w+ ]" |" }+ D2 Z                } catch (Exception e) {5 ~  u( ?: F2 t9 P
                        e.printStackTrace(System.err);
$ ]! l8 C- n8 [  w8 L8 i3 v/ m                        //System.out.println(e);
' U* h& B6 E; {+ m& B1 y                        System.exit(1);
3 T1 c, G. m) ~& b) _& E+ Y                }
! C7 Y' e' d# ~& y% f
; w  q$ b0 L$ _$ ?& n' e5 C
, L+ Y3 Y# E4 V# K, m        }
+ I+ y' T; s% e
# V3 l; t9 q! K$ E        private void swarmSetp() {* x% ~$ ?( u" O) f1 T; ^& r8 }# O
                list.addLast(new Agent(Id));
* s& l6 S. @; ^9 W1 {# M) c8 `8 f" `+ e                Id++;
6 U* _/ a; X* Z        }2 ^: h1 b# F2 r% a( I+ X! e

. L: b4 Y4 S  m        public Activity activateIn(Swarm context) {& f$ S2 c1 ^( [' y3 ~. K- D
                super.activateIn(context);
  s: H7 R9 l/ r2 Y                schedule.activateIn(this);! O; q5 c8 O9 M/ y) e# W
                return getActivity();# c( ^4 }' ]' C+ L# I. V, h
        }
8 I4 D) E) J) t/ ^5 e) p/ \
. M' u* k# H6 R& |4 Z        public static void main(String[] args) {
/ f9 v; h* ]) ]0 o3 Q                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ a) ~* i6 \0 |/ k- O1 l                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  I8 k- ]  y3 t3 o0 O" P                swarms.buildObjects();5 T) c# F9 r9 \+ E; r: p0 Q* t
                swarms.buildActions();
& @6 S  U2 f# V1 _. G% E                swarms.activateIn(null).run();1 r# V2 q; D: ]8 O* p7 @
        }" {' o+ e# T9 @6 w
! d* n1 [. B! h8 U
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-9-4 04:32 , Processed in 0.017238 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表