设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11982|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* t8 Z4 g- _# b3 Z& E6 c5 l# k. H  {* Q$ |5 O9 m1 ?
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 b5 Y+ Z1 G/ L  n% |以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 [! W% {; m9 w+ X3 {' Rswarm.SignatureNotFoundException
6 N/ N5 B+ Y3 A, _7 w        at swarm.Selector.<init>(Selector.java:76)# f0 ~4 c- v) y4 J( i
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  _  k+ E  C* V# m: o  s4 \: [
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- O# q0 V# H7 D$ \3 ~2 o, ?  B- g2 d( }5 z; n3 \* F, R0 L/ K

# F/ j+ o  Y5 Z( timport swarm.objectbase.SwarmImpl;/ ?3 V! Q6 v& ^( S
import swarm.objectbase.Swarm;' w' l, _& E* M- ~, \7 @; \$ N; m6 ~
import swarm.activity.ScheduleImpl;- @) W% Q+ r3 L
import swarm.activity.Activity;1 \- a# X) T7 G3 Q" {
import swarm.activity.ActionGroupImpl;
8 `( e  C& J# X- H8 O) jimport swarm.collections.ListImpl;0 X+ u) L* q4 w* {4 A: S; m
import swarm.defobj.Zone; ) F' L% |0 I& q8 d, T( s
import swarm.Globals;+ X' G0 C( X1 D8 p# k
import swarm.Selector;
3 W; k" y% h) Yimport swarm.activity.ActionGroup; 3 Y) X- H9 }8 [: \' c$ ^' Q9 O
class Agent {" H# y/ y9 `4 H! h* G) i+ {* h% M# T
        char id;6 B. q# k( o* h9 p
) z5 i( d. s" ~( }1 n
        Agent(char id) {1 r: A4 v& G; Z
                this.id = id;
; b9 y/ x& b/ f, `2 ^6 y0 x6 v        }
4 P4 @, p4 Z- e4 o" c; Z- L' ?8 J0 i' r$ P& ~
        public void agentStep() {
* E! A; w) J! `. c) Y                System.out.println(id + ":" + Globals.env.getCurrentTime());  M5 H: y% X8 A! g( \
        }- w! d2 _5 j4 N1 n
}7 b9 p. U: H* H7 _
  ~4 \1 `( |3 P
public class ActionGroupDemo extends SwarmImpl {
+ ~1 z' D" e2 C" n+ I3 ?! v3 z. P        ScheduleImpl schedule;, Z4 o3 |9 `) Q, k3 X+ C4 g% `
        ActionGroupImpl actionGroup;$ k7 d7 `0 w6 P$ H
        ListImpl list;
6 f6 [* f( B4 [2 o* h9 R        char Id = 'a';
* E: S$ c4 p# i$ ?6 \  [; c) Y( w$ x' ~% h
        ActionGroupDemo(Zone aZone) {. o3 C- C8 G3 y  c8 V. @% j5 }
                super(aZone);& K) g; q$ k% M0 L8 x
                list = new ListImpl(aZone);" Q4 V2 P! T% b
                swarmSetp();5 O& Q; ]6 n  P* I4 D" `& u! n
                actionGroup = new ActionGroupImpl(aZone);
8 a' U! z, |  j, H/ \( x. Z7 {5 B, Y                schedule = new ScheduleImpl(aZone);' m0 i. \# T- _7 u$ j
                try {! p# N7 k, a5 X, F
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
% B+ V, k5 F* {4 R                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& p, u* c/ L& k7 A                        8 g1 o( i8 Z9 Z
                        actionGroup.createActionForEach$message(list, agentSel);
# s* ]+ S: g/ u5 n- w3 o$ x                        actionGroup.createActionTo$message(this, swarmSel);
$ O2 A# A4 y' R' i  D9 p                        schedule.at$createAction(0, actionGroup);/ B9 ], \1 J; x  \
                        schedule.at$createAction(1, actionGroup);& W" m. M) ~& Q* @
                        schedule.at$createAction(2, actionGroup);% X9 e, |7 x% w9 R+ E. g7 [+ f
% Y- V& f+ O- ]$ ^" ], G3 t
                } catch (Exception e) {
* X3 L7 t4 W. G# E- ]0 z                        e.printStackTrace(System.err);
% i+ ?' M9 |% y6 t                        //System.out.println(e);0 V) [8 r7 {  ]% w: o
                        System.exit(1);
0 K4 n; a; o9 ^- K' ^9 c                }
7 ]0 w, {+ i5 N0 v; X. C1 D! X" S* ]# F' }

7 w) \+ V$ ]: j) {4 n" R! P$ |        }
% A9 K" F# F6 w0 v  V/ P2 Z2 `
8 s2 X6 r' _' D: h$ X        private void swarmSetp() {
8 \1 Z7 z/ L1 y( ?                list.addLast(new Agent(Id));
5 J/ m0 S( ]' c' m7 N; M                Id++;
7 ~" t2 e( W5 [        }) P) @3 T  ]- q2 }

$ e9 a; }8 y& Q0 H+ R$ k4 T# @# m        public Activity activateIn(Swarm context) {) {( ~/ a9 _: i2 A/ A2 T$ z' A- ~
                super.activateIn(context);
& {! y& W  \) Q) A7 |/ A, y8 o0 |& `                schedule.activateIn(this);2 z0 X2 E5 d" v
                return getActivity();2 i4 F# F1 @; B  E" K9 c
        }
6 ]! V8 R! l$ Z" z$ }/ `5 B( o! {' {; _
        public static void main(String[] args) {
7 z# g4 J- R, m. @0 _3 L/ P& Y$ W                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! d# q, M7 `' E* i
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- s+ _& b7 I) y1 q: y8 u, r4 T3 A
                swarms.buildObjects();
* t$ U9 m: g4 i1 w* H9 t% G3 U                swarms.buildActions();
7 l- @% L* E/ |. _9 K                swarms.activateIn(null).run();# r* b. N1 S* z! o& q$ V: p) L( K
        }
" @, v8 K  c/ F3 K& {! f) D2 w) o9 B2 X$ e7 _
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-27 09:34 , Processed in 0.016493 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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