设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7929|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 z  k" L9 C( I2 Z; {2 T

# w. {9 c/ ]; L: I/ R) y1 e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& P& {% t9 A! O/ o. G" |  t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ h$ f3 e$ _- ^& o- K
swarm.SignatureNotFoundException+ g/ ~, @4 ^8 j' j% u7 H7 f# Q
        at swarm.Selector.<init>(Selector.java:76)
. W* W5 G" X6 B1 G' w7 z. ^9 Z        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  s7 ?- c( L# L# {9 ?7 s# P
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
' G' I9 @$ v7 i5 ^' M( a1 q( T  ]. b0 h6 l/ x7 U3 m0 k$ r- b
  |: M* K! B7 m9 L% f
import swarm.objectbase.SwarmImpl;
( N2 u5 M' m4 K0 Y& r) p+ y7 l6 wimport swarm.objectbase.Swarm;
5 q8 ?& o9 I1 b/ M) S) D$ X$ Himport swarm.activity.ScheduleImpl;
6 j9 V; D4 ?' G2 wimport swarm.activity.Activity;
, }# E+ u6 ~8 v; T( V" Dimport swarm.activity.ActionGroupImpl;
% ]1 T6 H2 J2 n1 z+ Z4 u) i  s. M4 Dimport swarm.collections.ListImpl;8 p6 `3 {" s7 l4 Y1 N- z
import swarm.defobj.Zone;   Z4 s7 I3 }, W2 a8 W9 U6 [6 e
import swarm.Globals;
: O3 z$ Y& g. ?import swarm.Selector;
0 M! U2 w# \  _7 s' \% ?) |* Wimport swarm.activity.ActionGroup; 2 o% W/ r( q- W' B
class Agent {
! _9 F) q! j# A) y# J        char id;
1 u- y5 R& {8 n* d5 j2 u5 g% V$ m+ m6 j3 E/ ?( F5 ]/ C
        Agent(char id) {
6 ^' J, s3 G1 {/ X9 l                this.id = id;
+ A" p/ v$ x, _% v& g0 f- x        }9 \, D% ~3 D8 \( t, N- g
( a- \; C% M$ N, V
        public void agentStep() {
$ V3 V( T' {7 ~; p                System.out.println(id + ":" + Globals.env.getCurrentTime());
9 P8 Y" L$ e$ I+ g        }: l2 w; @7 J! ]$ e0 ?0 [
}
* W! W+ }0 `$ z1 E9 c. R7 v* i$ c
public class ActionGroupDemo extends SwarmImpl {
9 g" Y% g1 Y' a* @( y        ScheduleImpl schedule;  b  z1 u: `; G+ U
        ActionGroupImpl actionGroup;& m/ g* T8 M$ \# h
        ListImpl list;2 o: E5 L& x6 t& r, N
        char Id = 'a';
# v  C# W. V2 _9 V" F; u& e0 l$ Q
' h! E: o( D: O        ActionGroupDemo(Zone aZone) {
2 c2 P) `7 `* c9 i                super(aZone);3 `. f: |- Q! X$ z7 e. I8 W% _. B9 S+ U
                list = new ListImpl(aZone);
8 n) L9 y: L6 X' Q4 m5 x. b                swarmSetp();
( Z2 d3 u' z! \6 E$ ~# h$ ^7 t                actionGroup = new ActionGroupImpl(aZone);
; ^7 R, e& e: t7 L                schedule = new ScheduleImpl(aZone);
( n7 f5 m- f+ _, q                try {
5 h7 `/ Z: a- [" t# A8 N% W, ^                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 S% K% t2 l; L% K! L
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' z3 e( n0 w' C+ e2 H$ z$ ~8 I- I7 p
                        
2 A0 X+ g  \* u9 v- X- F1 k                        actionGroup.createActionForEach$message(list, agentSel);7 N, e; q( }# h! R) G( q
                        actionGroup.createActionTo$message(this, swarmSel);
  _6 n' ?" C, Q. k! O% R$ r                        schedule.at$createAction(0, actionGroup);
9 n; w7 j2 a  ~4 J" h                        schedule.at$createAction(1, actionGroup);: B6 D: e$ W; ?4 j6 _
                        schedule.at$createAction(2, actionGroup);: M2 P+ U% `8 B- F/ U/ M/ o

4 s  T( G, E8 [* |' N                } catch (Exception e) {/ i4 L# d  y" s
                        e.printStackTrace(System.err);
7 O# f0 k6 h& |7 B7 w( A% h                        //System.out.println(e);
% _( Z1 V  k* a: J                        System.exit(1);
) P+ ], `$ w' y' X' N                }
0 B4 _4 U5 s5 X" e2 f
! U8 g- }+ O9 A/ A9 \! C; v) R/ _3 l% m
        }
) E0 S; z8 M6 c% ]/ ~$ ~+ F" t. C$ t5 e1 |. G8 D0 e( {
        private void swarmSetp() {
* c( }$ E0 W. L" S0 ]                list.addLast(new Agent(Id));
: r# Y, k! S2 Y& Y! ^                Id++;
" L, ]  A' i9 r5 w        }$ }6 u* B  i+ H

0 _( J  Y+ @/ B& n: s3 J        public Activity activateIn(Swarm context) {
' D, M% ~# p% Q$ }* j# t                super.activateIn(context);
8 @4 ]$ D1 F- l) |0 \+ h                schedule.activateIn(this);7 B3 _+ g* w: I) ~3 q; o9 y
                return getActivity();3 a& K8 {7 c4 V, S, z* ~) ]7 b
        }% s" [' r+ [# K" r

: F# L, G) L! P$ f7 J0 L        public static void main(String[] args) {
  ?1 n& g  g  d1 N- d                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# Y7 k) h- x2 O/ T& @( N                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) L; [0 `5 w6 c
                swarms.buildObjects();
) t+ U! R- _: L                swarms.buildActions();5 T, X4 [; Q( @: S- i4 F
                swarms.activateIn(null).run();% ?& f# \3 A! B+ q
        }6 y8 X- h3 i7 @' |4 B" w" C

. m2 l4 y3 y1 J6 U5 O$ ?8 @8 n2 g}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-22 15:06 , Processed in 0.015266 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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