设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6135|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & j( H' z  d- k' X$ p' X0 f
& s9 I1 q6 W  C: D  K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ L8 \$ r, r; y$ r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ \7 k8 S( D# m
swarm.SignatureNotFoundException
! A1 h7 I2 ]6 a4 `" E( j        at swarm.Selector.<init>(Selector.java:76)' ~% ~* v  _1 q' t
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ L- ?: m0 u7 \# U1 n$ b
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 j, a' N7 x; }+ T  h. x# _4 O3 `0 X
3 m) `3 y, J# M7 S
import swarm.objectbase.SwarmImpl;
$ J* G0 b0 Y- M6 {' ^import swarm.objectbase.Swarm;3 W* M0 J& J3 n: x7 Z
import swarm.activity.ScheduleImpl;. g# h# W* e4 G8 A- ?
import swarm.activity.Activity;3 l9 @7 r% }8 \; j% U5 H2 e0 s
import swarm.activity.ActionGroupImpl;
, \9 d. D6 `. y% [import swarm.collections.ListImpl;- q2 D: x6 ~' W3 e
import swarm.defobj.Zone; / ]+ B7 U; M$ c1 T* M. L
import swarm.Globals;& H( ]. i/ _8 h) [9 [# U8 T
import swarm.Selector;: a7 l3 O( x4 A  F' g
import swarm.activity.ActionGroup; # X( s1 Q  f. |4 p9 O$ R
class Agent {
/ B+ [5 |" p0 i- q        char id;; ?+ E) L: i2 J' `8 R

) l, I; `. o) o8 @  U2 ?  v        Agent(char id) {( e7 Q7 d  E0 B! u" y
                this.id = id;
6 \/ M( j" @+ |2 x/ ^+ m* M: ?0 T' X        }; \& ^( O: z: B
% F$ _) |7 ]7 _5 f  J2 c9 ^9 J
        public void agentStep() {
2 m& T, k1 P2 b( d( Y' Q                System.out.println(id + ":" + Globals.env.getCurrentTime());0 p0 z$ X% b9 d! l
        }
; H: P8 H. @) W' i}5 r3 C; _' x7 C8 w) v8 ^1 Z4 U" b
) [8 x: _9 Y- Z2 E) f7 B* g
public class ActionGroupDemo extends SwarmImpl {7 w6 o! s! a3 D" n
        ScheduleImpl schedule;
; N$ ~9 c) M: \$ c$ D) J        ActionGroupImpl actionGroup;
8 q2 r9 ?; x4 a/ D8 l        ListImpl list;3 }0 {" p: [( B( T# h
        char Id = 'a';0 b/ u* e% p! o  p! L" E* U  U

, c% h$ G8 N; n; ^) d: O7 V1 p7 z        ActionGroupDemo(Zone aZone) {+ \9 m% D  v. ]! }5 E
                super(aZone);
7 f! u% X& D4 Y$ n                list = new ListImpl(aZone);
6 a7 G& w7 z6 ^/ G( S$ C7 x4 q                swarmSetp();
/ g7 ~( a1 c. j/ \1 T                actionGroup = new ActionGroupImpl(aZone);
! w0 ?/ e/ M% \, ?. C& s                schedule = new ScheduleImpl(aZone);$ e; Q. ]/ Z) n* L( ?
                try {1 s# K- K8 B0 j
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);+ e' Z- K: z) Z; u" a& J
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' [9 I3 E+ w& s# m1 C% P: t3 s                        
2 N3 i8 i! O( Y! u3 @2 u2 J                        actionGroup.createActionForEach$message(list, agentSel);4 L! D1 o- P+ j" r& @. e: x
                        actionGroup.createActionTo$message(this, swarmSel);
+ _$ s+ n% }" w) m                        schedule.at$createAction(0, actionGroup);
1 t1 j$ v+ w' h  P/ H5 l# y                        schedule.at$createAction(1, actionGroup);
/ J! x; r4 a  S9 v+ Z                        schedule.at$createAction(2, actionGroup);
' O5 q" I" p, X+ G# A0 h5 Y5 ^4 W$ S5 {6 N, `# E( l/ T' z
                } catch (Exception e) {
7 o1 b6 Y. F" z8 B3 e6 S                        e.printStackTrace(System.err);
5 ]$ ^5 u6 d& O3 z( f- K9 a3 b                        //System.out.println(e);
0 {+ u$ P! y2 h) @! j( n  Z                        System.exit(1);6 `( n; x; i1 Q2 w; ?" `# {2 m/ g
                }
6 t9 X9 f8 m( n+ u3 Q; H) h7 W
8 |/ s4 s, x1 Y. _* L3 N3 K$ B( l8 i# o
        }- M9 o  D  e/ R3 l3 r% O8 D. |

) ?2 N+ h3 Z& e& r- [" c7 q( i        private void swarmSetp() {
( r5 j- H5 Y. W                list.addLast(new Agent(Id));
7 t! X7 M* [& s6 X7 g- W- v                Id++;9 {, ?; n5 U/ ^6 Z; V* t
        }7 _* F) m% L3 P2 ?" [2 z9 V
. I2 ~8 B( }7 m( U: B" e
        public Activity activateIn(Swarm context) {# ?- g$ E0 j! Q( D' f8 n7 M0 w& x
                super.activateIn(context);
' l; p( I0 e) _# K& W2 M( n$ D5 ?5 x                schedule.activateIn(this);
1 X, ^. W2 g/ k1 L                return getActivity();' V  F# _( E: O1 X5 d& Y5 A
        }
* C- Y- n* V/ O* y& i( @; t% w% |9 e0 ]4 s! N: m1 Z
        public static void main(String[] args) {
+ U" x7 g0 W" A, N. V% q                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) n& }' c5 J! B+ q5 h  T( v                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 m8 {& F3 i, ]                swarms.buildObjects();& N" g5 g: L# F+ B
                swarms.buildActions();. d; Z1 b5 v2 s4 \! i- B9 l
                swarms.activateIn(null).run();: o& a' G0 K% B+ u$ B5 c% Z3 j3 u
        }
( ~# ~# o5 T% A2 [; d) H7 v
* ?2 W& z8 K; _: @5 ?* E& q  v}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-19 04:25 , Processed in 0.017282 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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