设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12637|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 v! N: q# |& y0 u  e- h
9 Z, N$ ?% \6 h" j( X  Y0 r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 V! o# E4 h6 L3 r2 V0 g以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  n* {3 A+ H% K0 q. L  N
swarm.SignatureNotFoundException+ f0 k' X, \% Y# S
        at swarm.Selector.<init>(Selector.java:76)+ e; D/ S5 k& P6 k& E/ C& Q& F( |, j: C
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; ~6 i3 L' _, ]* F        at ActionGroupDemo.main(ActionGroupDemo.java:67): Q$ @/ P: s  W# X5 s0 J5 h
; ]& L+ ], \5 s) {1 D

8 J9 i- e( W/ r. h; }' Zimport swarm.objectbase.SwarmImpl;; Q$ B) d9 p: L' W. s+ ^! f
import swarm.objectbase.Swarm;% S, u7 Q1 w7 [- ?
import swarm.activity.ScheduleImpl;* o. ~$ D  U1 o8 Z- N
import swarm.activity.Activity;7 v& c5 b4 _$ u7 Y
import swarm.activity.ActionGroupImpl;5 E& F* |, a1 b  i% Z
import swarm.collections.ListImpl;0 ^6 ^) Y4 m. @0 E& N8 ~6 d" j3 `
import swarm.defobj.Zone;
( }& X, p6 B& Qimport swarm.Globals;
' {1 f+ h2 i, ]) f2 Z  ?import swarm.Selector;
4 ]9 Y' U8 s7 l+ qimport swarm.activity.ActionGroup; ' \/ r' k" f% N4 Y. @+ H  Z
class Agent {
* D" L2 e% `. i/ ~5 I        char id;& c( I# `0 b0 X& y& @2 y( X5 K
1 R7 t4 K$ i  B5 }/ ?/ H' W( m5 H
        Agent(char id) {9 j8 c# }2 b* v' l7 o
                this.id = id;. I# i# G  m0 [% F, U9 G
        }
+ O' @* y% `9 {# W$ G$ {/ F/ o- h5 q& V# P7 F
        public void agentStep() {
# c) u$ D" c# I- ~5 Z                System.out.println(id + ":" + Globals.env.getCurrentTime());
' ?$ Z" Z3 P- t) ~        }- r7 n2 e+ c0 b; ^$ q4 k$ I
}
4 B% I  D- `" n; [3 [- ]" D3 W
, \& V1 H% N3 N# Ipublic class ActionGroupDemo extends SwarmImpl {
. D' I1 I' K3 t7 z' k        ScheduleImpl schedule;
  T8 V1 u. x' N! l        ActionGroupImpl actionGroup;% M# j. |/ X: D  c% M
        ListImpl list;
! E0 _; g, X7 ~  k  L        char Id = 'a';3 e' p& E$ ?- H8 E9 W7 Q9 F2 }- i0 S1 l

3 f( P1 k6 Q6 o: O' z- i. Y, y        ActionGroupDemo(Zone aZone) {: l2 q9 \0 V" i. ?$ J! H+ t
                super(aZone);# \- ^* K" [4 O: u9 j/ n% P
                list = new ListImpl(aZone);3 W" L; l3 Q, k8 r4 L7 |
                swarmSetp();0 x8 i* q0 |, v" |; j' f
                actionGroup = new ActionGroupImpl(aZone);
( N& i2 L3 w$ W; q9 a/ R                schedule = new ScheduleImpl(aZone);" O, S* K' X5 y+ ^) J, J# S' n2 f
                try {
& F3 U* B- U. M9 L. Z' h8 l( A                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 A( [  O' M- Q4 c* O
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行  I) D# k8 O1 {, }6 I
                        / o/ g# V% z+ z1 T+ B1 D7 p9 `
                        actionGroup.createActionForEach$message(list, agentSel);+ ]; q. {3 j! q
                        actionGroup.createActionTo$message(this, swarmSel);# p3 S) N1 E; u7 K; r  w
                        schedule.at$createAction(0, actionGroup);
: g* D& G- y" m                        schedule.at$createAction(1, actionGroup);
7 N8 `; z, M2 t) s                        schedule.at$createAction(2, actionGroup);" z/ K" U3 t& n# j& v" d! N# x: Y

1 y+ ]6 ~: E2 V* i8 A1 q+ O8 p/ a                } catch (Exception e) {% l1 C0 o' o! Y# J7 Y5 k
                        e.printStackTrace(System.err);
% D: L+ j& k0 N                        //System.out.println(e);
/ ^& O" ~0 D* r, z                        System.exit(1);  _0 V3 c" f* V6 M
                }
6 m" v# B8 Z# C  v2 B$ n; }4 q2 i7 r) j5 t( S1 z
3 \0 l- F% F1 ?9 l; a8 |' M
        }
1 a* a* I' n: J: D# g' |5 X6 D. c% V1 U6 D- \
        private void swarmSetp() {) b& |' y9 ]' j) s5 z" j
                list.addLast(new Agent(Id));0 ?' {1 e+ C# m4 C6 f0 p
                Id++;' p4 u9 g$ N  O* [+ N
        }
5 G1 j  F. Y8 D( u7 B# z" w
% r9 K1 ]! ]6 B3 w+ S. f% w        public Activity activateIn(Swarm context) {
: ?$ M5 Y9 B: ]& N                super.activateIn(context);+ f2 b4 e6 w* Z( A
                schedule.activateIn(this);1 g# O/ [: U& `: L
                return getActivity();
1 J* t& V( K( X& ]7 z5 F! ?        }7 N" k  M3 g* p! F% v) L+ y1 y
- {0 g' g& r2 Q  y4 a5 V( C! ~
        public static void main(String[] args) {
# Q$ r0 G7 D8 J) O  D                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ ~+ d! M/ a/ ~( |" l% U
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  z6 u3 r* H9 @" M) a4 L                swarms.buildObjects();
. U# a% O9 B& p4 c                swarms.buildActions();  l5 U$ S& _. i7 z, P$ T
                swarms.activateIn(null).run();
& M' S' R/ c7 D        }
7 R' h% p  H3 u: @7 K# e6 a! B# a7 l! b1 U- g0 w/ e  G
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-14 11:24 , Processed in 0.017939 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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