设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8268|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* z- l0 e" h5 |* d; f9 m8 s0 q2 b3 B5 X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ k" _7 V, D0 _
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' h% k  u$ O, n  l3 e. d1 U) @
swarm.SignatureNotFoundException
6 m6 \4 b- O& D, F2 `        at swarm.Selector.<init>(Selector.java:76)! G- o: i- e# j+ `( @
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' w$ J8 p6 ~# h$ l        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ g$ y7 W) X4 M3 k" g. F- K

  ]# S" R" B. K) @, _# T* d9 p  g- F! j% a( T1 y
import swarm.objectbase.SwarmImpl;" ]2 r1 B; ~- N* h1 v8 T+ k
import swarm.objectbase.Swarm;% [4 V9 @2 L" z0 i- u+ y2 k' p) o
import swarm.activity.ScheduleImpl;5 Q2 L0 x/ S& q" S
import swarm.activity.Activity;
) j. U$ l% W; ]0 Dimport swarm.activity.ActionGroupImpl;, R/ p. @" s2 X5 o0 R
import swarm.collections.ListImpl;# C9 c: o+ I, T6 @
import swarm.defobj.Zone; 9 {1 p' A/ [) s5 S8 ], }
import swarm.Globals;. I; a1 }8 U+ s) a. F9 E9 ^$ }
import swarm.Selector;1 G' ^; I6 _* I  I9 h) M: c9 D' @
import swarm.activity.ActionGroup; . W) V3 I/ p' u, ~, z
class Agent {4 E7 ~- s2 l) `- _) r7 k' o
        char id;2 t, S+ w# O9 U0 c) _; N$ g4 y8 @' A% a

8 Q4 J3 k; s7 a- K- G9 Z% m2 Y& a        Agent(char id) {
. ~- Z2 ~* R2 F3 G                this.id = id;7 ^0 N  J+ Q4 m
        }
6 \0 N# R3 k! x- X) c! Z" ?$ s( J6 `
! s( u! p- i2 x: G. {, [* H        public void agentStep() {( J$ Y! p0 f: _4 C# e) B- E. N
                System.out.println(id + ":" + Globals.env.getCurrentTime());. g4 u- ^" z, I+ v
        }/ ?' {) O- q) H8 w) o5 p
}" q- D. e- Y" ]4 }

" n" F, Y7 s  ]& p8 t6 Mpublic class ActionGroupDemo extends SwarmImpl {
8 R+ h. D) _/ C        ScheduleImpl schedule;
) p: k0 @/ g! J4 P        ActionGroupImpl actionGroup;
. S; g! z+ i$ E( M        ListImpl list;
! L( c1 h3 @1 q  P- v        char Id = 'a';9 P/ \+ G$ q' K3 D% C3 p$ G& v( k
& R! Z& Q8 M$ ?8 c
        ActionGroupDemo(Zone aZone) {8 f4 }6 N+ U0 Q3 l
                super(aZone);
$ x% x. t3 C4 q                list = new ListImpl(aZone);0 Y/ y( i. D* U, \' b0 o3 A( \
                swarmSetp();
  h+ Q4 G* w8 B1 Y. D  A                actionGroup = new ActionGroupImpl(aZone);+ N7 n* {( o) X' ^" P# K) m( M
                schedule = new ScheduleImpl(aZone);  E6 H  w; h" v$ i3 E' r
                try {
- N/ R, `+ w4 P; c5 q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
% E* A9 m' T# D1 s. J7 A                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 F8 ?. S) X5 F7 y2 r5 X# e: I
                        ) @  Q$ `6 z# S
                        actionGroup.createActionForEach$message(list, agentSel);+ k, B) \. d& `; y
                        actionGroup.createActionTo$message(this, swarmSel);
- t+ m6 u, V; m0 o/ Y                        schedule.at$createAction(0, actionGroup);
. r* O4 O6 Q; A9 y) b                        schedule.at$createAction(1, actionGroup);0 _) d6 Q" o) {9 e) v& I
                        schedule.at$createAction(2, actionGroup);
0 r$ `$ B+ J5 j
, F( N! P, A1 @                } catch (Exception e) {
! @* {/ J- Q9 K; l                        e.printStackTrace(System.err);
3 V5 }" k) l# W                        //System.out.println(e);* [+ K+ ^2 h& Z) j5 q7 f* L! g- l% h5 V
                        System.exit(1);
8 y5 Y  u- B2 ]/ C+ W. a                }* _6 N& a0 v5 A5 _2 d1 u

0 S+ k3 x( P# {" _; J0 f$ h9 V0 X0 t  x, G) s
        }2 e2 u$ r' f8 ~+ Y2 S$ G9 i( `
# ]9 V' o" [6 y  A* x+ z( m- s- @
        private void swarmSetp() {
! f8 H$ j, W! o% q. x4 S6 Z                list.addLast(new Agent(Id));
5 a0 ~) t, Q( n/ w6 T' l9 d                Id++;* Q% X, X$ _2 r9 k% t4 Q, U3 a
        }8 d$ r3 p( o- S4 W

1 v% \3 C5 z7 i  V7 T6 @        public Activity activateIn(Swarm context) {
- V! `0 D8 R* f! C$ S( P% E" i                super.activateIn(context);
0 E# q* ^1 R4 p( I                schedule.activateIn(this);% f: V+ y& n4 h+ m
                return getActivity();
" w' ]3 [& a' I+ A" }3 u        }
% D9 w* A3 k  s3 f: @! K. P
1 |+ a, k/ h6 [- x' p        public static void main(String[] args) {
* }0 G/ j0 O8 \  Z9 O7 l                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 A9 M+ f1 `2 X2 n# k
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# D2 t) x! E$ \8 P5 v1 T
                swarms.buildObjects();
2 ]+ ^- D, d% X# E+ r6 w                swarms.buildActions();( A! x7 Q* ]( X3 A
                swarms.activateIn(null).run();! v8 D% \- E+ c8 j' r& m# @4 J
        }8 @& v6 F6 z% s

% d* J0 S% r* X3 f- n. I}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-6 00:10 , Processed in 0.023710 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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