设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7928|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 S$ {& W7 i$ k7 r% L0 [
! C/ F0 _. X- @9 Y- y& w
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 e7 U8 Z$ l: W0 L. F0 [  A以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% Q  x2 x$ l$ `1 {
swarm.SignatureNotFoundException
; `0 X: {2 l( R  d# ?: S0 G. t        at swarm.Selector.<init>(Selector.java:76)
4 r5 o1 m1 {3 M: }/ P' L        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% @" o  J4 f; \$ H) t        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 D7 e4 z( }: {; f/ Y

* I+ B7 q3 ~& b2 O8 Y: d- ?
# E& l) ]) n1 Zimport swarm.objectbase.SwarmImpl;
  A, b7 Q& V0 P( d8 [9 Rimport swarm.objectbase.Swarm;
. |2 Z2 S7 d8 n8 @; Kimport swarm.activity.ScheduleImpl;/ _% C/ x4 ^3 U! ~4 H; D8 M* e
import swarm.activity.Activity;
$ v% s, K" ]2 F. @% Kimport swarm.activity.ActionGroupImpl;
  d/ d# [% y: z( u6 }) Pimport swarm.collections.ListImpl;' ]6 M+ Y0 _' ^: f* }
import swarm.defobj.Zone; # W' r4 }9 m) d' c4 D
import swarm.Globals;  c: \  T) i3 {3 O8 z% c) i* x" X
import swarm.Selector;: C5 v! Z5 j/ }* O, O) e( G/ s# Z! J
import swarm.activity.ActionGroup;
' ^8 {# E/ c. _9 M4 v, k- Z& fclass Agent {
, v- \0 ^, ~+ Q2 d' G        char id;
7 \  O( v0 V# ]' @0 C2 S9 d- I3 Q7 K' }- L
        Agent(char id) {
" L8 O9 [: v$ ?! P3 w. Z8 d* O                this.id = id;" x. t- j- N4 y1 G% w% L; X
        }
$ W7 |9 S4 e! E/ J( X6 y" w
0 L* G' V) t  o2 C# |        public void agentStep() {3 P- `0 j! P. K$ S# d
                System.out.println(id + ":" + Globals.env.getCurrentTime());6 y; I8 t9 q& w% b
        }2 k% E+ t8 A6 N* F* t/ B. _
}- d( O) E1 q5 T* C4 o9 u" h
/ [0 Q$ U/ P/ f, r: L
public class ActionGroupDemo extends SwarmImpl {
! g# Y! X; D5 r+ X* i" b) g        ScheduleImpl schedule;6 T2 D& i0 c; s+ d* @
        ActionGroupImpl actionGroup;
( F; j2 n4 }. Q% w: x6 e3 t        ListImpl list;
" y' |( O* K$ I$ @        char Id = 'a';5 g% T7 t+ R8 G, O8 H7 \; G
3 x2 I* L# A5 L9 B; |
        ActionGroupDemo(Zone aZone) {; }! {0 o# w( p% V9 C
                super(aZone);
* w. t1 [% x* B  ]5 y/ n4 u* ], m                list = new ListImpl(aZone);
' W- n0 y: }0 {                swarmSetp();9 p+ |: A, q# x% u' C7 c$ O6 y* ^
                actionGroup = new ActionGroupImpl(aZone);
  E; y+ B# F/ \) z: [9 e) D                schedule = new ScheduleImpl(aZone);& ^4 K$ A% r: O" n
                try {
' K4 R7 E+ K7 }1 c. w                        Selector agentSel = new Selector(Agent.class, "agentStep", false);. x  j( f% q4 o. k' H( z
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& {  H5 i7 c3 _5 F                        
, C& u0 N0 F/ P7 G% d                        actionGroup.createActionForEach$message(list, agentSel);
! u9 g9 C7 r1 \/ V# t/ w                        actionGroup.createActionTo$message(this, swarmSel);8 z8 X5 K$ Q- q) e8 |, `* m: G
                        schedule.at$createAction(0, actionGroup);
0 {0 S1 ?+ K6 l3 E! t) ^! A& G                        schedule.at$createAction(1, actionGroup);
4 v$ n0 ^: `4 P/ d3 D, b- F, x8 a                        schedule.at$createAction(2, actionGroup);
6 n% ~. M9 o+ C8 q1 O, X5 ]8 f
' c: F6 T: [% J- O5 F' }                } catch (Exception e) {: e7 C8 I1 B* N
                        e.printStackTrace(System.err);
8 |& {0 B; z) z. ^                        //System.out.println(e);+ h, ]4 Y  M. h% \( {0 {8 J! c
                        System.exit(1);3 k# Q' s, I7 u: M/ m# ^
                }2 |  S0 m4 f, f) f" b- u
/ J5 f/ q7 o& l

+ H( H. g" j& }        }2 x) H0 [6 S1 I! O* k& \
" S4 y8 w1 C, t- v; U3 B/ L3 X
        private void swarmSetp() {) g4 a; B& A8 G; H8 m( X' E* J
                list.addLast(new Agent(Id));) p9 ^; H8 f2 s) }. B( Q  k6 s% \# e. w. Q
                Id++;. S; H7 F& I3 V; l; _
        }% R. q$ D6 e' v5 |5 {0 b% q. f

% B$ U" J* g) Q; {5 Z$ H6 @; v        public Activity activateIn(Swarm context) {& C2 Z- u# m3 q  c6 J; ^/ L
                super.activateIn(context);2 Y4 S7 |3 `, L/ z  y, u
                schedule.activateIn(this);
- a4 V; V& X8 E5 H                return getActivity();
4 h6 S" }8 H$ t. B( ?7 s        }
4 G. \. L. P! Y6 i. U( C8 P8 \8 Z6 u0 |6 v8 R; O; i% j# A0 e
        public static void main(String[] args) {
6 |% |/ ?- o7 U1 H# t8 J                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ r$ _0 y, U- }
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% Z* \  ]8 k, t& \
                swarms.buildObjects();
! h  v, k9 q) D3 {- Q8 q2 A                swarms.buildActions();
& |+ q( U( J$ I$ a; a2 M5 {                swarms.activateIn(null).run();- F' ]0 t! y9 Q) r+ H6 h
        }, y* V7 Z4 {& R; r  ~

0 V2 C, `+ A) P( c6 k}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-22 11:38 , Processed in 0.017944 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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