设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11855|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 c# Q7 \9 a8 f

+ I8 l% N0 K8 A3 U9 F4 A% T( b& V本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) O; X* a  c; M( v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( c: U2 @" q( e5 D/ @* S" }* bswarm.SignatureNotFoundException) s  {# Z9 _3 D6 F# d- j* d
        at swarm.Selector.<init>(Selector.java:76). E) S: E  P) y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 B7 Q% Q" A5 D7 e        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( S5 T! M% D: W  m- d6 n. P4 o6 ?4 h( o# U7 J

! k+ {3 {4 M- S8 F5 q# eimport swarm.objectbase.SwarmImpl;
" _1 E4 K, a5 r2 X3 O0 Uimport swarm.objectbase.Swarm;
5 e4 P. s, Z6 K8 ^" bimport swarm.activity.ScheduleImpl;
2 `; B! E5 X: |2 {. I0 x  r3 l2 \( L( Dimport swarm.activity.Activity;7 l* |& W) |7 U2 I$ J& _8 P( S% k0 ?
import swarm.activity.ActionGroupImpl;: y4 k* L: J- {
import swarm.collections.ListImpl;6 J4 q6 g0 [; ^5 U5 {4 B0 k/ I3 C
import swarm.defobj.Zone;
5 {  y* @. z% k: }. ]5 vimport swarm.Globals;; Q2 W9 W, @9 O* U( {5 k
import swarm.Selector;) h% v4 ]* F' u( C, q# o9 V
import swarm.activity.ActionGroup;
: n2 M  P' Z: ^. y/ M0 J" W9 kclass Agent {
  d! p1 `4 p8 e* x        char id;
5 Y* j8 H: j2 I5 ^( _- U. K+ N5 \4 U8 H6 ~: v% ~. M
        Agent(char id) {
, j' o3 |# l9 g                this.id = id;
( N  ?0 _, J) y3 S        }
& e( A5 v9 w* Q2 ^- U
* `* }2 R9 p; N8 h7 b        public void agentStep() {+ r2 H( G5 L, q6 ~0 o
                System.out.println(id + ":" + Globals.env.getCurrentTime());
* ]- {/ M) r7 v. F        }0 d3 L, J, W: Q7 u$ M
}
- U8 Q& N* G9 ]! i% T1 d
7 H) A$ {% l7 qpublic class ActionGroupDemo extends SwarmImpl {" Y& j" k7 ?2 q
        ScheduleImpl schedule;
; {& I) w: ^& x' x        ActionGroupImpl actionGroup;
1 }2 p3 B- ?" V3 r        ListImpl list;1 @6 s1 b0 {1 _, P1 R: J" U1 R5 A5 o- z
        char Id = 'a';
% r9 N: @; c7 ?1 f. A6 q, x4 R
! C; E( b( p9 J' r( k" ~        ActionGroupDemo(Zone aZone) {
4 Y, b. l+ g! i* Y  U                super(aZone);
3 s) x6 f: U  t4 T, B( I: s                list = new ListImpl(aZone);
/ a1 a  n+ Z2 E: n$ E                swarmSetp();
* Z+ ?7 ?, I% w2 i, a: l2 N                actionGroup = new ActionGroupImpl(aZone);' C6 i8 k  s9 M4 R+ t7 u
                schedule = new ScheduleImpl(aZone);& G5 t! e6 E  Q( @. F
                try {
* X' P& j1 m! B; g                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ D# ~4 \" v/ L  y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" f1 R5 W; B& ?/ Q4 I7 s
                        
6 q# |# C0 L3 U  T. h                        actionGroup.createActionForEach$message(list, agentSel);
# [0 g. _# i$ T2 O) |                        actionGroup.createActionTo$message(this, swarmSel);% b* m0 X; w: u, Z
                        schedule.at$createAction(0, actionGroup);6 {0 {! O1 e3 B3 N
                        schedule.at$createAction(1, actionGroup);
+ a, j7 }0 o, t: U2 H5 m3 h6 s. R                        schedule.at$createAction(2, actionGroup);6 J! H; T: Z# r' v/ |6 L0 w
7 ~4 |; G1 P6 i  ?1 r. w$ Z
                } catch (Exception e) {) m2 U- h* K1 s2 s/ A2 a4 E
                        e.printStackTrace(System.err);0 n* L2 j& @. X) [
                        //System.out.println(e);* c: r/ q* B7 W& A
                        System.exit(1);- J+ y) N9 {. {- q" o1 w
                }. E* D, G& s8 S6 W0 @+ ?
4 @% ^/ E" {5 a* h6 ~
5 e- M$ x% V' j/ v0 Q& E# d
        }+ X) U- B1 F. ?; x& R, c
' `  i' l  l" ^+ v) ?
        private void swarmSetp() {, a/ b4 X. E8 [/ M7 ?
                list.addLast(new Agent(Id));" H& Y( K( k9 r  C  U3 M
                Id++;) g8 v: Y+ }0 p0 Z! Y: f$ |5 Y- m4 i9 q
        }
# y% y3 j: ~1 R8 j+ N- M( _2 h  @* C8 g2 [7 N6 B/ v
        public Activity activateIn(Swarm context) {# }7 D0 b8 E& B' o4 c
                super.activateIn(context);
$ V# h8 c1 V2 }) V" G, U0 N                schedule.activateIn(this);  ?7 d+ h! C* T/ W( E" @
                return getActivity();
/ u2 `) t' e2 j2 G+ f% j1 l2 R* i        }0 G/ M. ?% e1 g# X( i$ l1 ?3 J) o7 X
$ z. A+ K+ S9 P& B' \
        public static void main(String[] args) {
! ~5 j6 y( ~, s9 C# F& q                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 S6 [7 L" b1 q: ?
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# h5 a' l! \1 ~6 ^3 G9 t                swarms.buildObjects();* }0 u2 \+ F0 ?' ]* l
                swarms.buildActions();
( W2 g4 C1 j# p) T; u                swarms.activateIn(null).run();; b, Q: X0 |4 V- o" X$ e% R5 A- ]
        }( M8 S( L& x  I" \
! K2 u' ~9 F3 g3 z8 x
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-23 19:06 , Processed in 0.016428 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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