设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13354|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 ?# Q  ~" ]; S8 _7 o. l5 }' @, r; q5 L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ O2 h  l; q# e# l7 \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 L3 y. ?1 y2 Z% X, X) X: V
swarm.SignatureNotFoundException
' C# A, A! J' g* f$ X) A        at swarm.Selector.<init>(Selector.java:76)) ~/ c9 Q( [$ W. `' Q
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 g) {' o! G, ^* }
        at ActionGroupDemo.main(ActionGroupDemo.java:67)* C. J+ V) @1 {3 ?8 L: K  A( T/ |
) w# B, H5 |5 E

  B+ {4 V. W8 {0 O. vimport swarm.objectbase.SwarmImpl;  L+ O/ S2 ~" |7 D( ]! @
import swarm.objectbase.Swarm;$ q8 K" t+ r/ O/ r2 \% t
import swarm.activity.ScheduleImpl;& ^0 R0 E! u0 C. Y
import swarm.activity.Activity;6 n) n! k$ H: ?$ t& c
import swarm.activity.ActionGroupImpl;7 D- W) B: \  S: _& a9 |3 L
import swarm.collections.ListImpl;
- y# V/ y8 I+ p4 Bimport swarm.defobj.Zone; + u$ C) Z0 E7 T) i  W6 F! e4 s4 |
import swarm.Globals;- z) t% }2 L6 m( i3 x
import swarm.Selector;
+ T. m5 {: W/ _$ _3 w- {2 d4 Simport swarm.activity.ActionGroup; ' e0 m( ?( H0 _
class Agent {3 l- ?( ~& ?  p/ K7 k7 `+ |2 m
        char id;
% f; N) q! E2 \/ w3 `6 _. t
5 R: j. q3 w( Y9 ]6 u. I6 |/ |/ @        Agent(char id) {4 l: R( j' b; z( O" P8 x
                this.id = id;7 t7 T1 f4 ^0 _) q4 X0 ?$ J
        }7 l% W' [( `/ `' ?& _( _
+ m# L8 I; u9 p
        public void agentStep() {2 c& T! Z; ~. d/ B4 q! k
                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 |; R5 i3 y; B0 j5 g        }! K" I, N7 q2 U" J$ F' `5 `2 o
}
: ?* k- {3 U2 n% x( A# N$ y; {
* c  W2 O/ C+ i5 ?! ~8 apublic class ActionGroupDemo extends SwarmImpl {7 U" ~) I4 b4 l' G/ o
        ScheduleImpl schedule;
7 W4 d  S  T% V9 E        ActionGroupImpl actionGroup;
6 Z' r  d; ^0 d3 A        ListImpl list;
& b+ u/ @3 H. W$ s$ X- C3 c% @7 x$ X        char Id = 'a';8 }; Z8 |* D5 |' M+ ^  u7 U5 i

! }4 r- k3 f) J        ActionGroupDemo(Zone aZone) {
$ c1 s& d( ^& X& o; b: e                super(aZone);
1 m% V. K% |4 p                list = new ListImpl(aZone);
/ w- ]4 Y  h( C4 H/ |: n- x                swarmSetp();; o: T) p/ S: h, K
                actionGroup = new ActionGroupImpl(aZone);
( D! P7 x7 y; j1 d                schedule = new ScheduleImpl(aZone);
! a+ N6 q: Z4 a9 H# v, A* x: [9 B                try {
- l2 [/ q& ^# o1 |4 v1 @- q1 K                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
" r; ?; |  g: I$ d/ b- n) J' ^! T                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ ~8 D, E2 S. i
                        5 D, v; M# x, P
                        actionGroup.createActionForEach$message(list, agentSel);
7 u. q: l/ P/ l$ G6 {9 U& Q                        actionGroup.createActionTo$message(this, swarmSel);) D+ s0 ^, d( F
                        schedule.at$createAction(0, actionGroup);
8 w* Z8 ^, X( H6 s! B1 O$ k                        schedule.at$createAction(1, actionGroup);
2 l+ G- l  v- q) d                        schedule.at$createAction(2, actionGroup);8 k) S+ f3 f; t+ V5 \% N- v  e
3 R7 D: g& j# j& r9 ^* M4 b
                } catch (Exception e) {
+ ?6 S1 F9 \( g9 b) O, `5 x7 W1 \  U/ G                        e.printStackTrace(System.err);
( @( |( r1 x  y; }                        //System.out.println(e);0 `  p' O; y4 l# o$ f! P
                        System.exit(1);
8 G( P. m7 l8 U9 d$ N9 n                }) q& d' F- R5 ^1 K  l; e; S

: {! J* d0 l, M+ I
7 A  N# l# d! y9 Q        }+ \, z% e8 \9 ~! h
% l8 k; l8 m% _
        private void swarmSetp() {2 r' T% C2 C' \: r2 ]: P2 V, v
                list.addLast(new Agent(Id));
; A" [, N. _# G7 K" M1 z                Id++;8 T0 R& G( Q: L- V& ^
        }/ k$ v( T$ x1 |
, q, \/ J6 A# B0 O( c
        public Activity activateIn(Swarm context) {
2 V1 a6 k0 z! m                super.activateIn(context);
1 D; N! M3 }1 M( h: u. N+ ~0 t                schedule.activateIn(this);' o% s9 o2 g( {: F
                return getActivity();; T: \  d/ F0 O8 f' e+ e# A8 L* a
        }, S% l" R% {. z8 ]; Y
4 f2 S; {; ^# J
        public static void main(String[] args) {* |" y1 V6 h1 T3 J3 V
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 J3 b* s5 ?) R8 y
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* `2 A  J2 ]9 J' _9 M
                swarms.buildObjects();
( v) J; M. m3 `, b1 H. `                swarms.buildActions();
6 W/ Q; ]' J5 B, T                swarms.activateIn(null).run();
, M  X: G3 {$ c. E        }4 r. C# I8 d5 f
, R- h5 d9 B, Y" [
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-4 18:27 , Processed in 0.016055 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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