设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9360|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% d1 H5 `1 z8 i4 U2 @- I% ~' X# P( R: h7 V7 w; [* Y  z3 ^/ s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 g  e; X/ V+ g
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! r+ K9 J# g/ a+ L, r  I6 S" F
swarm.SignatureNotFoundException
* M: ]. k" |, X: f9 E! Z        at swarm.Selector.<init>(Selector.java:76)% C' r- `. F" `/ \" T' _8 Y& }
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 e4 P5 b2 ?1 `        at ActionGroupDemo.main(ActionGroupDemo.java:67)
; j; o% }$ x3 Y9 i, |, @7 F" y3 |! ^+ E; V# {- O; f
8 |! b; [" h% \& R: O2 g" c
import swarm.objectbase.SwarmImpl;
, Q" s9 L9 |; m6 z5 L0 c7 vimport swarm.objectbase.Swarm;0 X" Y# w" l6 `  [; Q7 V
import swarm.activity.ScheduleImpl;( Z" F) n& c+ X
import swarm.activity.Activity;
% L6 M0 p4 C+ b5 jimport swarm.activity.ActionGroupImpl;
5 z$ V$ l# A' Z" `% Himport swarm.collections.ListImpl;
* M0 }- d0 k7 _- [/ f( D8 \% Aimport swarm.defobj.Zone;
# u, P3 I4 x* j! c& Oimport swarm.Globals;! R7 H9 D/ p$ `$ h  _
import swarm.Selector;
, R$ `" K1 p* U0 s1 }import swarm.activity.ActionGroup; + O, z8 L) ~2 D) W) ~
class Agent {8 a7 ^( C4 l; R7 G7 d
        char id;
; Z; E, S# h$ ?% X9 W$ [" D# c$ L# K: n
        Agent(char id) {
9 W# Q+ ?+ O0 _8 \0 j" s) w: }                this.id = id;
9 ?5 [9 G8 U8 l% t        }
7 U8 k& I" o$ q1 ?0 G4 ?& p3 X9 j
( G  ~2 p8 e2 j5 z  e& Z) v        public void agentStep() {$ ?7 f9 C/ f2 H: s8 @7 Z$ U/ A
                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 W8 `3 x* ?* L1 Q0 M  N) ?0 b/ d        }
5 B9 s( z) [+ C  Z% E7 P$ H; M}. S" I) s6 w2 K8 ]
3 I( k5 o/ q) h; U6 u
public class ActionGroupDemo extends SwarmImpl {
2 Q0 q  k) X: y- ^        ScheduleImpl schedule;' S$ D6 @( Q! J) Z  ^% P
        ActionGroupImpl actionGroup;
* ^2 B; I) U! f8 j) f4 V        ListImpl list;" r- E$ I1 _! ~! F. q+ g+ W  u& R
        char Id = 'a';3 S  O4 v; R/ W# t% ^  p7 T

, z% @; y# X$ M' a' G        ActionGroupDemo(Zone aZone) {' t) {/ K  e" X0 b3 |) H) y4 e
                super(aZone);! x0 g) a- B! t
                list = new ListImpl(aZone);
  ]9 d, c3 f7 a( S& K                swarmSetp();
! G) F, m* |. P) X( k$ q                actionGroup = new ActionGroupImpl(aZone);3 N/ A. ?5 n% Y' Y9 c, @5 z
                schedule = new ScheduleImpl(aZone);
" ]2 ~; a$ ?3 E& `1 \/ C2 ^                try {. m6 V. h$ G6 |0 ?$ ?
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: t% I  U6 n* S: O% q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; A. A( s% X* @/ U! c( \
                        
. b+ g5 z/ z. g! \                        actionGroup.createActionForEach$message(list, agentSel);, G% R8 `; F+ l% x3 p
                        actionGroup.createActionTo$message(this, swarmSel);
: R0 I" F- E; i- o% \                        schedule.at$createAction(0, actionGroup);
* Q: n$ U" e2 B' D" |# q5 _3 ]                        schedule.at$createAction(1, actionGroup);2 x2 [! F9 V) j' G( s/ v0 Q8 \$ I
                        schedule.at$createAction(2, actionGroup);: i7 }) k6 x5 g2 u- b  ?
5 \( _4 S5 B+ ?8 ?: E
                } catch (Exception e) {
3 {! o4 e; d+ v6 l2 y  P                        e.printStackTrace(System.err);) e- V+ |* d- o$ s# z
                        //System.out.println(e);2 k6 f3 I* t4 R, l' p
                        System.exit(1);4 \  q2 J* j5 \; G# A$ d* R- @5 Y5 N
                }
* r7 s0 F* i: @/ x) Y& d; r3 {: u# i

$ A* I. ]7 z. l$ k: ~  ~, X# k        }
- H$ _0 o) m. G
' ^" R- v7 z6 c( n3 Q        private void swarmSetp() {
1 j: \( O$ x, [. d% F: r5 D2 l3 Y1 y9 m                list.addLast(new Agent(Id));
% p, _" r6 p9 l8 q4 a5 K                Id++;
% R# R  S2 u6 V( W        }
9 i% |5 G+ N- C2 P+ Q7 W! Q
* ]/ v! O* e* ~        public Activity activateIn(Swarm context) {
2 {  c1 x# _' y, s1 e- L4 H                super.activateIn(context);
" _1 g; B7 x* B( K& [5 G                schedule.activateIn(this);1 Z$ E: R2 Z- S7 d: p
                return getActivity();1 d4 M+ u; l+ P, n% `2 i
        }" g; h$ N! ^  g6 e; g+ X1 }

9 W- z9 h# W6 y* @        public static void main(String[] args) {
7 W* b1 J  B+ q2 D% z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- r6 S0 O  d. B* T* ]0 @                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' m5 H% E! l5 B
                swarms.buildObjects();
4 R+ |& S* H! v( f                swarms.buildActions();5 ?$ e3 S8 O2 ~0 q5 |
                swarms.activateIn(null).run();
: Z4 L* G* }3 Q! h+ E        }# @& U& Q; u, C- u7 T: d5 I8 N3 a9 i
0 z6 o0 [& h* `
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-10 00:09 , Processed in 0.016337 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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