设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11675|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! |9 p6 e' G  a
% X4 s" g) e( z% y3 ?2 h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ ?, c, M6 h4 x
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( }0 O8 l' l4 V- Q$ ?
swarm.SignatureNotFoundException
3 x  f4 H8 Q3 J4 u8 ]- d        at swarm.Selector.<init>(Selector.java:76)6 m6 k3 H7 y# U7 p
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ `: \; `2 E. ^: J4 I        at ActionGroupDemo.main(ActionGroupDemo.java:67), [9 p0 ^+ B! B& g1 f+ T) B
/ q' e! ~. N! b. V1 p6 v+ \8 R9 q% v
' q5 }9 J; n6 t6 |
import swarm.objectbase.SwarmImpl;
; \7 s! }3 C' r# G5 Simport swarm.objectbase.Swarm;: d. _6 }- w6 o1 I- D  a$ n
import swarm.activity.ScheduleImpl;3 _; r! B% `4 f' n" n
import swarm.activity.Activity;
% r# c7 _  u5 x0 `import swarm.activity.ActionGroupImpl;! n' k( O8 D: J
import swarm.collections.ListImpl;- P$ l& u; T) f6 [
import swarm.defobj.Zone; 5 o$ @( {- m' a: `
import swarm.Globals;; }1 E5 x9 j/ X* M- B
import swarm.Selector;
/ b1 n3 T) p( Z6 G3 h: _& `0 p" Iimport swarm.activity.ActionGroup; $ c( q& G% z! N- @! s. v. k
class Agent {" j: F- Z% B, n9 c; a. x6 M% O" c
        char id;
6 h8 w9 \7 u$ u4 q7 h4 D3 m5 M! f5 T# H: b
        Agent(char id) {
% a* ~( R! K9 z                this.id = id;+ m4 ?  O8 [! c5 [2 M# I
        }7 d5 B2 L! S5 B- }! T3 i8 @

. }# S2 b0 F! ~# x; F( T" A2 ~        public void agentStep() {& V  ?: D- N2 F, W5 Z  b$ P+ F! R6 W+ j* p
                System.out.println(id + ":" + Globals.env.getCurrentTime());% Q5 y" ?/ ]2 F% a0 @5 @% S3 `
        }
: Z( b; b& Z  f2 |}6 u2 K6 f7 d% X+ I
& C6 U8 e9 D9 g1 c6 Q) _, M
public class ActionGroupDemo extends SwarmImpl {( G5 ^& X% A$ z, ?
        ScheduleImpl schedule;
' v! I/ e5 ~# j8 q        ActionGroupImpl actionGroup;6 H* Z+ L. i4 q4 f& ?0 x
        ListImpl list;7 V% ?& |0 P: f( ^: O! e: S
        char Id = 'a';
6 k7 w6 p) d* y& M: L& F$ i
' F1 W1 C9 l/ R! E0 b! d        ActionGroupDemo(Zone aZone) {
" ?: k; t1 d" p# ~                super(aZone);
+ }7 B$ o- z. G2 U                list = new ListImpl(aZone);6 H1 e6 Q# l; u7 T# z1 ^
                swarmSetp();( ?) v* U/ t- k6 x. G1 ^
                actionGroup = new ActionGroupImpl(aZone);
1 B( z' g5 u+ @: I                schedule = new ScheduleImpl(aZone);
3 F& a. e1 r+ d                try {1 |. a9 [0 ~, s1 u0 Y3 P# C2 ^
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 t' b& s3 ?% X' {7 m; P) n                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: e0 P: D  R' @1 d                        ' ]. r! |' |, O$ R, r
                        actionGroup.createActionForEach$message(list, agentSel);0 y  K$ i! \: j1 ?& C( Z. _
                        actionGroup.createActionTo$message(this, swarmSel);* z* k4 T. J# ^  w* L7 m
                        schedule.at$createAction(0, actionGroup);# R: v* j5 F% E; w5 c
                        schedule.at$createAction(1, actionGroup);" g$ j2 Q" k# ?9 V6 o0 L1 O
                        schedule.at$createAction(2, actionGroup);
* d0 E* E3 F$ _7 Y" f! h! z6 d4 L( V$ {: k) g$ q
                } catch (Exception e) {, l2 I! a3 z- S6 S& P  l
                        e.printStackTrace(System.err);4 [& c2 }* i' J9 X( U% L  R
                        //System.out.println(e);  `4 ?5 X4 H0 ~8 T
                        System.exit(1);$ t! a' R4 M- s; c5 u+ w4 q; H
                }8 q9 a/ K. _4 p: G: {; z+ M2 S
% g8 [+ L/ I/ y9 E/ \
. P2 `# g  Q$ r. _7 G. k; q+ c; [
        }
% Y( s3 |4 j& A
0 q5 f7 B( Z& `2 F% M1 A        private void swarmSetp() {* y( T( N1 W( k3 Z( U& M# ~
                list.addLast(new Agent(Id));
5 l0 K' e: ]2 x9 `, d+ c                Id++;" I8 N6 V2 d& N" ~$ o0 D6 x" e! F
        }
- ]1 y$ V/ t9 Q5 @6 N. \
  ]2 M  _2 ?/ y2 L( v        public Activity activateIn(Swarm context) {& e8 o. x# W" `' T- B( E
                super.activateIn(context);
* ^3 o. P/ }* W) {                schedule.activateIn(this);
$ G# C. q# }. ~                return getActivity();
9 K( m. F8 x# I/ `0 {2 {        }; \4 U8 s" c3 R' _* S* U
/ [, V% }/ K) j4 R
        public static void main(String[] args) {
* U% p2 `( b$ s5 x1 x                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: `3 e. E8 A* V7 [) Q) z: U! M, D( k                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! ]' p# t, s/ |, f& T1 \3 P                swarms.buildObjects();: M# {% r2 Q( ~
                swarms.buildActions();3 x" D+ x2 p; a
                swarms.activateIn(null).run();- S/ H: U# C* J# o
        }/ N0 Z6 b" G8 H" s9 ~9 r' m

/ `7 H0 F4 G' L5 [6 ?2 ?}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-18 19:10 , Processed in 0.012635 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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